我有一个谷歌地图,显示正确的初始页面加载,并显示正确的地方标记(这是从自定义Web服务检索)。不过,我正在提示用户分享他们的位置,当他们这样做时,地图就会消失。我提示用户通过分享自己的位置:谷歌地图 - 地图不重新加载时,用户分享位置
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(setPosition, error);
} ...
这工作得很好,并在“成功”函数被调用(setPosition两种),我用下面的刷新地图:
//load map object and show map
this.map = new google.maps.Map(
document.getElementById(this.mapElementId),
{
zoom: this.currentZoom,
center: this.startPos,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
);
'this.map'已成功填充谷歌地图对象。 'document.getElementById(this.mapElementId)'工作正常,并且找到我想要地图出现的<div>
,'currentZoom'和'startPos'的坐标正确地被获取。
以前这个工作正常,当时地图是的一部分 - 我现在将代码内联移动到之前包含的页面(它看起来不像跨域问题,因为我“已经验证了这一点)
UPDATE
(实际上,请忽略我以前的更新 - 我越来越取决于我是否正在调试不同的标记下面是从工作的标记和破版本,当我允许共享我的位置时,没有运行Firebug调试器。'working'版本中的蓝线显示突出显示包含谷歌地图的DIV):
工作:
破:
我猜获得用户的地理位置可能工作后刷新谷歌。检查此[回答](http://stackoverflow.com/a/18607307/1671639)如何触发谷歌地图v3中的刷新。希望这可以帮助。 – Praveen
真的忘了问你,地图画布是灰色的吗? – Praveen