【问题标题】:Can you insert a google map into a page via AJAX你能通过 AJAX 将谷歌地图插入页面吗
【发布时间】:2011-10-16 10:14:41
【问题描述】:
我正在使用谷歌地图 V3 javascript API 来创建谷歌地图。这工作正常,但我的地图上有很多标记,因此正在创建大量 javascript,使页面大约 5mb,因此页面加载时间很长(超过 20 秒)!我想通过 ajax 拉取地图,以便在下载之前显示一个 ajax 加载器 gif。我无法让它工作。我拉入 javascript 和所有内容并将其插入到页面中,但地图没有加载。一旦代码在页面中或其他东西中,我是否需要调用初始化函数?
【问题讨论】:
标签:
javascript
jquery
google-maps
【解决方案1】:
您可以使用 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
});
我不确定的一点是,空闲状态是否仅涉及加载的瓷砖或所有标记。