禁用浏览器位置提示

Posted

技术标签:

【中文标题】禁用浏览器位置提示【英文标题】:disable browser location prompt 【发布时间】:2011-12-26 05:23:08 【问题描述】:

好的,所以我今晚一直在玩 html5 geolocation,我想知道有没有办法禁止浏览器提示用户选择他们是否可以/ 或者可能不想让我的网站跟踪它们?因为我需要跟踪他们以到达准确的时区,以及类似的事情,但如果用户拒绝该网站定位他们,我现在会有时区、州、城市、邮政编码等......我猜我在寻找更多的黑客! jQuery代码:

  jQuery("#btnInit").click(initiate_watchlocation);  
  jQuery("#btnStop").click(stop_watchlocation); 

  var watchProcess = null; 

  function handle_errors(error)  
          
            switch(error.code)  
              
                case error.PERMISSION_DENIED: alert("Yo");  
                break;  

                case error.POSITION_UNAVAILABLE: alert("could not detect current position");  
                break;  

                case error.TIMEOUT: alert("");  
                break;  

                default: alert("unknown error");  
                break;  
              
         

function initiate_watchlocation()   
    if (watchProcess == null)   
        watchProcess = navigator.geolocation.watchPosition(handle_geolocation_query, handle_errors);  
      
  

function stop_watchlocation()   
    if (watchProcess != null)  
      
        navigator.geolocation.clearWatch(watchProcess);  
        watchProcess = null;  
      


function handle_geolocation_query(position)   
    var text = "Latitude: "  + position.coords.latitude  + "<br/>" +  
               "Longitude: " + position.coords.longitude + "<br/>" +  
               "Accuracy: "  + position.coords.accuracy  + "m<br/>" +  
               "Time: " + new Date(position.timestamp);  
                jQuery("results").html(text);  

  

【问题讨论】:

【参考方案1】:

你不能。

W3C 在document 中撰写了有关 Geolocation API 的安全和隐私注意事项的文章。每个实现 Geolocation API 的浏览器都必须遵循这个规则。这是本机功能,因此没有任何技巧可以避免它。

【讨论】:

更具体地说,如果你找到了绕过权限提示的方法,你就发现了一个安全漏洞,供应商会以高优先级修补它。

以上是关于禁用浏览器位置提示的主要内容,如果未能解决你的问题,请参考以下文章

IE浏览器下载文件保存时提示:“你没有权限在此位置中保存文件”解决办法

如何使用 jQuery 在浏览器中禁用工具提示?

在谷歌浏览器中禁用位置栏

浏览器运行的时候 事件打印不出来,提示 此页面出现代码禁用了反向和正向缓存(由于默认事件导致的)

禁用浏览器状态栏文本

屏蔽Chrome的--ignore-certificate-errors提示及禁用扩展插件并实现窗口最大化