你能通过AJAX将谷歌地图插入页面吗?

时间:2011-10-16 10:14:42

标签: javascript jquery google-maps

我正在使用谷歌地图V3 javascript API来创建谷歌地图。这工作正常,但我的地图上有很多标记,所以很多javascript正在创建,使页面大约5mb,因此页面加载时间是巨大的(超过20秒)!我想通过ajax拉取地图,这样我就可以显示一个ajax loader gif,直到它被下载。我不能让它工作。我拉入javascript和所有内容并将其插入页面但地图不会加载。一旦代码在页面中,我是否需要调用初始化函数?

1 个答案:

答案 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
});

我不确定的一点是,空闲状态是仅涉及瓷砖加载还是所有标记。