将Google的异步加载文档压缩到Dojo的asynchronous loader中会产生:
dojo.io.script.get({
url: 'http://maps.googleapis.com/maps/api/js',
jsonp: 'callback',
content: {
sensor: 'false'
},
load: function() {
console.log('done');
},
error: function() {
console.log('error');
}
});
或者摆弄它:http://jsfiddle.net/sKNmS/
MapJS文件被加载,但是回调函数从来没有被调用。为什么?
3条答案
按热度按时间6tqwzwtp1#
dojo.io.script.get
只能用于JSONP服务,您的回调函数不会被调用,因为据我所知,该URL不会返回JSON格式的响应,而只会返回纯JavaScript。dojo.io.script.get
设置了一个回调函数,该回调函数应该由从该URL返回的代码触发,因为该URL指向纯JavaScript,所以该函数永远不会被触发,因为响应不是JSONP。ccgok5k52#
看起来
dojo.io.script.get()
不支持GoogleMap对JSONP回调的延迟调用。我已经填满了一个 dojo 。
kuhbmx9i3#
还有另一种方法(在Dojo 1.6上测试):
由于dojo.io.script.get返回延迟对象。