我正在使用谷歌地图V3 javascript API来创建谷歌地图。这工作正常,但我的地图上有很多标记,所以很多javascript正在创建,使页面大约5mb,因此页面加载时间是巨大的(超过20秒)!我想通过ajax拉取地图,这样我就可以显示一个ajax loader gif,直到它被下载。我不能让它工作。我拉入javascript和所有内容并将其插入页面但地图不会加载。一旦代码在页面中,我是否需要调用初始化函数?
答案 0 :(得分:0)
您可以使用addListener将事件绑定到地图的空闲状态。
所以,也许你可以将它隐藏在背景中,显示你的微调器,等待事件然后显示它。
类似的东西:
google.maps.event.addListener(yourmap, 'idle', function()
{
if(!mapLoaded) $('#yourmapdiv').trigger('mapLoaded');
mapLoaded=true;
});
然后:
$('#yourmapdiv').bind('mapLoaded', function(){
// hide your spinner, show your map
});
我不确定的一点是,空闲状态是仅涉及瓷砖加载还是所有标记。