Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 谷歌地图-地图不';无法在用户共享位置时重新加载_Javascript_Google Maps - Fatal编程技术网

Javascript 谷歌地图-地图不';无法在用户共享位置时重新加载

Javascript 谷歌地图-地图不';无法在用户共享位置时重新加载,javascript,google-maps,Javascript,Google Maps,我有一个谷歌地图,可以在初始页面加载时正确显示,并显示正确的位置标记(从自定义web服务检索)。但是,我会提示用户共享他们的位置,当他们这样做时,地图就会消失。我通过以下方式提示用户共享其位置: if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(setPosition, error); } ... 这很好,在调用的“success”函数(setPos

我有一个谷歌地图,可以在初始页面加载时正确显示,并显示正确的位置标记(从自定义web服务检索)。但是,我会提示用户共享他们的位置,当他们这样做时,地图就会消失。我通过以下方式提示用户共享其位置:

        if (navigator.geolocation) {
            navigator.geolocation.getCurrentPosition(setPosition, error);
        } ...
这很好,在调用的“success”函数(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”已成功填充google地图对象。“document.getElementById(this.mapElementId)”工作正常,可以找到我希望地图显示在其中的
,并且“currentZoom”和“startPos”的坐标被正确获取

以前,当映射是
的一部分时,这一切都可以正常工作-我现在已将代码内联移动到先前包含
的页面中(我已经验证了这一点,它看起来不像是跨域问题)

更新

(事实上,请忽略我以前的更新-我得到的标记因我是否在调试而不同。以下是我允许共享我的位置时,在没有运行Firebug调试器的情况下,工作版本和中断版本的标记。显示的“工作”版本中的蓝线突出显示了包含Google地图的div):

工作:

破碎的:


事实证明,在我的“设置位置”回调函数中(当浏览器能够成功请求用户的地理位置时使用),我正在隐藏一个
,当地理定位请求失败时,它会显示一条错误消息。出于某种原因,隐藏
会阻止地图显示,即使它随后没有在任何代码中引用,并且与包含谷歌地图的
无关。我已经问了另外一个问题,那就是正在进行,以及如何可靠地清除此处的错误消息:


我想在获取用户地理位置后刷新Google可能会起作用。请检查如何在Google maps v3中触发刷新。希望这会有所帮助。实际上忘了问你,地图画布是灰色的吗?