Heim >Backend-Entwicklung >PHP-Tutorial >javascript – Ich habe eine Frage. Liegt es daran, dass die externe JS-Datei nicht heruntergeladen wurde und die Ready-Funktion nicht ausgeführt wird?
Ich habe kürzlich ein Problem mit der Karten-API von Google festgestellt, die ich lange Zeit nicht lokal öffnen konnte und die sich immer im Status „Ausstehend“ befand Schaltflächen, insbesondere diese Schaltflächen, wenn sich das Klickereignis in der Bereitschaftsfunktion befindet, hat es keine Auswirkung. Was ist die Lösung?
<code> <script type="text/javascript" src="http://maps.google.com/maps/api/js?language=<?php echo $language; ?>"></script> <script type="text/javascript"> $(document).ready(function() { var lat = {lat: <?php echo $geocodes[0]; ?>, lng: <?php echo $geocodes[1]; ?>}; var myOptions = { zoom: 17, center: lat, mapTypeId: google.maps.MapTypeId.ROADMAP, disableDefaultUI: true, zoomControl: true, }; var map = new google.maps.Map(document.getElementById("map"), myOptions); var marker = new google.maps.Marker({ map: map, // Define the place with a location, and a query string. place: { location: lat, query: `<?php echo $address; ?>` }, // Attributions help users find your site again. attribution: { source: 'Google Maps JavaScript API', webUrl: 'https://developers.google.com/maps/' } }); // Construct a new InfoWindow. var infoWindow = new google.maps.InfoWindow({ content: `<?php echo $store; ?><br><?php echo $address; ?>` }); infoWindow.open(map, marker); // Opens the InfoWindow when marker is clicked. marker.addListener('click', function() { infoWindow.open(map, marker); }); }); </script> </code>
Weitere fertige Funktionen
<code>$(document).ready(function() { // Language $('.language a').on('click', function(e) { e.preventDefault(); $('.language input[name=\'code\']').attr('value', $(this).attr('href')); $('.language').submit(); }); });</code>
Ich habe kürzlich ein Problem mit der Karten-API von Google festgestellt, die ich lange Zeit nicht lokal öffnen konnte und die sich immer im Status „Ausstehend“ befand Schaltflächen, insbesondere diese Schaltflächen, wenn sich das Klickereignis in der Bereitschaftsfunktion befindet, hat es keine Auswirkung. Was ist die Lösung?
<code> <script type="text/javascript" src="http://maps.google.com/maps/api/js?language=<?php echo $language; ?>"></script> <script type="text/javascript"> $(document).ready(function() { var lat = {lat: <?php echo $geocodes[0]; ?>, lng: <?php echo $geocodes[1]; ?>}; var myOptions = { zoom: 17, center: lat, mapTypeId: google.maps.MapTypeId.ROADMAP, disableDefaultUI: true, zoomControl: true, }; var map = new google.maps.Map(document.getElementById("map"), myOptions); var marker = new google.maps.Marker({ map: map, // Define the place with a location, and a query string. place: { location: lat, query: `<?php echo $address; ?>` }, // Attributions help users find your site again. attribution: { source: 'Google Maps JavaScript API', webUrl: 'https://developers.google.com/maps/' } }); // Construct a new InfoWindow. var infoWindow = new google.maps.InfoWindow({ content: `<?php echo $store; ?><br><?php echo $address; ?>` }); infoWindow.open(map, marker); // Opens the InfoWindow when marker is clicked. marker.addListener('click', function() { infoWindow.open(map, marker); }); }); </script> </code>
Weitere fertige Funktionen
<code>$(document).ready(function() { // Language $('.language a').on('click', function(e) { e.preventDefault(); $('.language input[name=\'code\']').attr('value', $(this).attr('href')); $('.language').submit(); }); });</code>
<code><script> var js = document.createElement('script'); js.src= 'js地址'; document.querySelector('body').appendChild(js); </script></code>
Dies wird nicht blockiert
Ihre fertige Funktion hängt von der API von Google ab. Sie können also nur warten, bis die API geladen ist. Wenn sie zu langsam ist, laden Sie die Google API-Datei herunter und fügen Sie sie in die statischen Ressourcen Ihrer Website ein.