为什么我得到 'window.initMarkers is not a function'
Why am I getting 'window.initMarkers is not a function'
我正在尝试使用 JSFiddle 异步加载 Google 地图,但我一直收到 window.initMarkers is not a function
错误。
有人遇到了同样的问题,他们通过将其移到外面 $(document).ready()
解决了这个问题。但是我需要使用 jQuery。
那么有谁知道我怎样才能做到这一点? My fiddle here.
var map;
var GoogleMaps = {
loadGoogleMapScript: function (callback) {
(...)
script.src = 'https://maps.googl...sensor=false&callback=' + callback;
},
setMarkers: function (stores) {
(...)
}
};
function initMarkers(){
var stores = [
['Store 1', 59.9136813, 10.7421917],
['Store 2', 59.9136287, 10.7419084],
];
GoogleMaps.setMarkers(stores);
}
GoogleMaps.loadGoogleMapScript('initMarkers');
这是范围问题
改变
function initMarkers(){ ...
至
window.initMarkers = function() { ...
这使得 initMarkers 成为一个全局函数,它可以被加载的 google 脚本中的 "callback" 运行。像这样声明的函数
function initMarkers() { ...
里面 document.ready 不是全局范围的
我正在尝试使用 JSFiddle 异步加载 Google 地图,但我一直收到 window.initMarkers is not a function
错误。
有人遇到了同样的问题,他们通过将其移到外面 $(document).ready()
解决了这个问题。但是我需要使用 jQuery。
那么有谁知道我怎样才能做到这一点? My fiddle here.
var map;
var GoogleMaps = {
loadGoogleMapScript: function (callback) {
(...)
script.src = 'https://maps.googl...sensor=false&callback=' + callback;
},
setMarkers: function (stores) {
(...)
}
};
function initMarkers(){
var stores = [
['Store 1', 59.9136813, 10.7421917],
['Store 2', 59.9136287, 10.7419084],
];
GoogleMaps.setMarkers(stores);
}
GoogleMaps.loadGoogleMapScript('initMarkers');
这是范围问题
改变
function initMarkers(){ ...
至
window.initMarkers = function() { ...
这使得 initMarkers 成为一个全局函数,它可以被加载的 google 脚本中的 "callback" 运行。像这样声明的函数
function initMarkers() { ...
里面 document.ready 不是全局范围的