Dojo: динамически и синхронно загружать междоменный скрипт - PullRequest
0 голосов
/ 02 марта 2012

Я работаю над проектом, в котором мне нужно использовать додзё (я делаю собственный виджет) и API карты Google (v3)

По какой-то технической причине я должен включить API карты Google через мой js-файл, а не через html-файл, поэтому я не могу использовать

<script type='text/javascript' src='http://maps.googleapis.com/maps/api/js?sensor=false&libraries=places'></script>

Нагрузка должна выполняться синхронно.

Я попробовал кое-что, сначала добавив скрипт с помощью

document.write("<script type='text/javascript' src='http://maps.googleapis.com/maps/api/js?sensor=false&libraries=places'></script>");

Но это не работает, вместо этого я получаю пустую страницу, с помощью firebug я вижу, что панель "Сеть" очищается и страница выполняет бесконечную загрузку скрипта API карты Google.

Я думаю, что не могу сделать это с помощью dojo.io.script (который позволяет делать междоменный запрос), потому что мы не можем сделать синхронный запрос с dojo.io.script

Любая помощь будет оценена;)

Ответы [ 2 ]

1 голос
/ 05 марта 2012

Ну, решение было использовать обратный вызов Google Map:

var script = document.createElement("script");
script.type = "text/javascript";
script.src = "http://maps.googleapis.com/maps/api/js?sensor=false&libraries=places&callback=mapLoaded";
document.body.appendChild(script);

Затем сделайте функцию "mapLoaded", которая выполняет код

Спасибо тем, кто нашел время ответить мне

0 голосов
/ 02 марта 2012

Вы все еще должны иметь возможность использовать dojo.io.script.Это не должно быть синхронным.API карт занимает AC

...