传单地图事件 'load' 不触发
Leaflet map-event 'load' does not fire
我正在尝试在使用传单 1.0.1 成功加载传单地图后调用一个函数。关于 docs there is a map event named load
,它指出:在地图初始化时触发(当它的中心和缩放首次设置时)。所以这个片段应该触发,如果地图已经加载,但那永远不会发生:
function onMapLoad() {
alert("Map successfully loaded")
};
mymap.on('load', onMapLoad);
没有错误或响应,简单的没有。
那么为什么地图加载事件无法正常工作?
这是一个简单的 JS FIDDLE。
在实际加载地图之前放置 mymap.on('load', onMapLoad);
事件处理程序(使用 map.setView...
)。
所以你的实际代码应该是这样的,
var mymap = L.map('mapid');
mymap.on('load', onMapLoad);
mymap.setView([51.505, -0.09], 13);
来源:Github Issue
或使用内联
var mymap = L.map('YOUR_MAP_ID').on('load', onMapLoad).setView([51.505, -0.09], 13);
function onMapLoad(){
console.log("map loaded");
}
我建议您使用 Leaflet 1.0.1 中提供的 "whenReady" 方法
var callBack = function () {
console.log("Map successfully loaded");
// do some stuff
};
mymap.whenReady(callBack);
我正在尝试在使用传单 1.0.1 成功加载传单地图后调用一个函数。关于 docs there is a map event named load
,它指出:在地图初始化时触发(当它的中心和缩放首次设置时)。所以这个片段应该触发,如果地图已经加载,但那永远不会发生:
function onMapLoad() {
alert("Map successfully loaded")
};
mymap.on('load', onMapLoad);
没有错误或响应,简单的没有。 那么为什么地图加载事件无法正常工作?
这是一个简单的 JS FIDDLE。
在实际加载地图之前放置 mymap.on('load', onMapLoad);
事件处理程序(使用 map.setView...
)。
所以你的实际代码应该是这样的,
var mymap = L.map('mapid');
mymap.on('load', onMapLoad);
mymap.setView([51.505, -0.09], 13);
来源:Github Issue
或使用内联
var mymap = L.map('YOUR_MAP_ID').on('load', onMapLoad).setView([51.505, -0.09], 13);
function onMapLoad(){
console.log("map loaded");
}
我建议您使用 Leaflet 1.0.1 中提供的 "whenReady" 方法
var callBack = function () {
console.log("Map successfully loaded");
// do some stuff
};
mymap.whenReady(callBack);