Google Maps API и Head JS проблема - PullRequest
1 голос
/ 06 июня 2011

Итак, я загружаю Google Maps APL v3, используя headjs, а после этого плагин gmap3 jQuery. Это фактический код:

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" );

Проблема в том, что я получаю сообщение об ошибке, в котором говорится, что google.maps.Map не определен. Я думаю, это потому, что файл maps js загружает дополнительные ресурсы, но head js продолжает анализ файлов js, поэтому мы получаем ошибку. Любые решения, чтобы обойти это? Предоставляет ли Google Карты аналогичное событие google.maps.ready?

Я также попытался использовать «Асинхронную загрузку API Javascript», как сказано в документации, я скопировал все это и получил «Uncaught TypeError: Object [object DOMWindow] не имеет ошибки метода initialize». Странно, странно.

1 Ответ

5 голосов
/ 09 июля 2011

Я не уверен насчет первой части, но я загружаю ее асинхронно и получаю ту же ошибку, что и вы, которые высадили меня здесь при поиске в Google. Так что для будущих гуглеров ...

Пример строки API карт Google:

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

часть "initialize" - это обратный вызов, который код вызывает после загрузки скрипта ... так что вам нужно либо определить функцию "initialize", либо изменить имя на функцию, которую вы хотите вызвать, и тогда у вас все получится идти.

...