使用 javascript 或 jQuery 检测用户是不是拒绝浏览器定位计算机的请求
Posted
技术标签:
【中文标题】使用 javascript 或 jQuery 检测用户是不是拒绝浏览器定位计算机的请求【英文标题】:Using javascript or jQuery, detect if a user denies browser's request to locate computer使用 javascript 或 jQuery 检测用户是否拒绝浏览器定位计算机的请求 【发布时间】:2013-10-15 13:24:21 【问题描述】:我正在构建一个网站,该网站通过 - navigator.geolocation.getCurrentPosition(positionFound)
请求使用某人位置的权限。
使用javascript或jQuery,我如何检测用户是否拒绝权限,在他们拒绝之后的那一刻?
我的代码看起来像这样 -
function Geolocation()
navigator.geolocation.getCurrentPosition(positionFound)
function positionFound(position, found)
if (position.coords)
//do stuff
部分问题是,在用户接受或拒绝使用计算机位置的权限之前,到达navigator
之后的代码。
【问题讨论】:
阅读一些文档:developer.mozilla.org/en-US/docs/Web/API/… -getCurrentPosition
的第二个参数是为错误调用的函数,接收带有详细信息的错误对象 (developer.mozilla.org/en-US/docs/Web/API/PositionError)
How to call function when user Allows or Denies access to "Physical Location"? 的可能副本
【参考方案1】:
navigator.geolocation.getCurrentPostions
可以带两个参数success, error
将您的代码更改为:
function positionFound(position)
// dostuff
function positionNotFound(error)
// Handle error
function Geolocation()
navigator.geolocation.getCurrentPosition(positionFound, positionNotFound)
Source
【讨论】:
【参考方案2】:Ian 是对的,看看这个example 使用getCurrentPosition
【讨论】:
以上是关于使用 javascript 或 jQuery 检测用户是不是拒绝浏览器定位计算机的请求的主要内容,如果未能解决你的问题,请参考以下文章
Javascript/jquery:如何检测在其他窗口或应用链接中加载的页面?
在javascript或jQuery中检测iframe的负载(不是同一个域,动态添加)?
JavaScript 或 jQuery 浏览器后退按钮点击检测器
检测 <td> 的内部 html 何时随 javascript 或 jquery 更改