我正在改进我们的网络应用中的Google Maps API V2集成,我希望我的主页知道Google地图何时完成加载所有内容,以便我可以设置一些标记。
我注意到有一个load() event,但我似乎永远无法解决它。
这是我正在使用的代码
if( GBrowserIsCompatible() ) {
map = new GMap2(container);
map.setCenter(new GLatLng(INITIAL_LATITUDE,INITIAL_LONGITUDE), INITIAL_ZOOM);
GEvent.addListener(map, "load", pluginLoaded );
}
...
function pluginLoaded() {
alert( "pluginLoaded" );
}
答案 0 :(得分:5)
load
事件未触发,因为它在您调用setCenter()
后很快被触发,此时您的事件侦听器尚未附加。您可以在以下示例中看到触发的事件:
if (GBrowserIsCompatible()) {
var map = new GMap2(document.getElementById("map"));
GEvent.addListener(map, "load", function() {
alert("Map Loaded");
});
map.setCenter(new GLatLng(37.4419, -122.1419), 13);
}
请注意,无需侦听load
事件即可开始向地图添加标记。