Google Maps Javascript GeoLocation - 在Chrome上不起作用

10 浏览
0 Comments

Google Maps Javascript GeoLocation - 在Chrome上不起作用

请注意:以下HTML的原始来源来自http://www.w3schools.com/html/tryit.asp?filename=tryhtml5_geolocation_mapGoogle Maps Javascript V3 geolocation - cannot access initialLocation variable unless alerted。我已经收集了三个不同版本的地理位置示例。所有示例在Firefox中正常工作,但在Chrome中均无效。我已经将Chrome的权限设置为允许所有网站使用我的位置,但仍然没有成功。可能是Chrome的设置问题,但不是明显的设置选项:Settings/Show Advanced Settings/Privacy/Content Settings/Location/Allow all sites to track my physical location。在Firefox中,我在提示共享位置之后可以看到我的当前位置。在Chrome中,我会收到用户拒绝地理位置请求或错误:地理位置服务失败的提示,具体取决于HTML的内容。考虑到它在Firefox中可行而在Chrome中不可行,我认为必须是Chrome的设置问题,但我不知道是否有更加宽容的设置选项可以解决问题。以下是三个HTML5文件的内容:\n

geoGoogle.html:

\n



 
   地理位置
   
   
   
   
   
   
 
 
 

\n

geoGoogle2.html:

\n



 
   地理位置
   
   
   
   
   
   
 
 
 

\n

geoGoogle3.html:

\n




点击按钮获取您的位置:

\n谢谢。

0
0 Comments

问题原因:在Chrome浏览器中,Google Maps Javascript GeoLocation功能在使用HTTP协议时无法正常工作。

解决方法:只需将HTTP协议更改为HTTPS协议即可解决该问题。

// 修改前

// 修改后

通过将URL中的"http://"替换为"https://",即可使Google Maps Javascript GeoLocation在Chrome浏览器中正常运行。

0
0 Comments

问题原因:Chrome和Safari(webkit浏览器)不允许在文件系统中使用地理位置API。

解决方法:创建一个Web应用程序,并使用localhost访问它。在Safari 5.1.7中仍然无法获取地理位置。

例如,可以创建一个名为geoGoogle.html的文件,并将其放置在本地服务器的根目录下。然后,在浏览器中输入以下地址进行访问:

http://localhost/geoGoogle.html

这样就能够在Chrome和Safari浏览器中正常获取地理位置了。

0