3

是否可以在没有浏览器提示的情况下获取用户的地理位置?

这是来自 W3 的代码示例

<script>
   var x = document.getElementById("demo")

   function getLocation(){
     if(navigator.geolocation){
       navigator.geolocation.getCurrentPosition(showPosition);
     } else {
       x.innerHTML="Geolocation is not supported by this browser.";}
     }
     function showPosition(position){
       x.innerHTML="Latitude: " + position.coords.latitude + 
       "<br>Longitude: " + position.coords.longitude;   
     }
</script>

有没有preventPrompt()类似的功能?

4

2 回答 2

3

不,您不能阻止提示,它是一项安全功能,因为并非每个用户都想共享其位置。

来自W3C 文档

本规范的一致实现必须提供保护用户隐私的机制,并且该机制应确保在未经用户明确许可的情况下不会通过此 API 提供任何位置信息。

但是您可以尝试在错误回调中使用geoip之类的服务。

于 2013-01-26T16:26:49.523 回答
1

不,那是不可能的。

提示在那里,以便用户可以选择您是否知道该位置。

于 2013-01-26T16:27:04.760 回答