2011-06-06 5 views
1

Donc, je charge Google Maps APL v3 en utilisant headjs, et après cela, le plugin gmap3 jQuery. Ce est le code réel:API Google Maps et problème Head JS

head.js( "http://localhost/wordpress/wp-includes/js/l10n.js?20101110", "http://localhost/wordpress/wp-includes/js/jquery/jquery.js?1.4.4", "http://maps.google.com/maps/api/js?sensor=false", "http://localhost/wordpress/wp-content/themes/twentyten/framework/js/gmap3.min.js?3.3" );

Le problème est que je reçois une erreur qui dit google.maps.Map n'est pas défini. Je pense que c'est parce que le fichier js maps charge des ressources supplémentaires, mais head js continue à analyser les fichiers js, donc nous obtenons une erreur. Des solutions pour contourner ce problème? Google Maps offre-t-il un événement google.maps.ready similaire?

J'ai également essayé d'utiliser "Chargement asynchrone de l'API Javascript" comme le dit la documentation, j'ai copié le tout et j'ai obtenu "Erreur TypeError: Object [objet DOMWindow] n'a pas d'erreur 'initialize'". Bizarre, étrange.

Répondre

5

Je ne suis pas sûr de la première partie, mais je la charge de manière asynchrone et j'ai la même erreur que vous qui m'a posé ici sur une recherche google. Donc, pour l'avenir ... Googlers

L'exemple ligne API Google Maps a ceci:

script.src = "http://maps.google.com/maps/api/js?sensor=false&callback=initialize"; 

« Initialiser » partie est un rappel que le code appelle une fois que les charges de script ... afin que vous soit besoin pour définir une fonction "initialiser", ou changer le nom de la fonction que vous voulez appeler et alors vous devriez être bon à faire.