【问题标题】:Make html5 geolocation ask permission every time user reloads the page每次用户重新加载页面时,让 html5 地理定位请求权限
【发布时间】:2013-04-27 13:29:04
【问题描述】:

我们为什么需要它:

我们的网站中有一些页面允许用户输入一些数据并搜索他们所在地区的其他客户。当用户打开该页面时,必须显示弹出消息

http://foo.bar.com 想使用您当前的位置。

之后,用户可以放弃它并手动填写位置字段或接受并自动重定向到结果页面。

问题:

问题是当用户第一次选择任何提到的选项时,浏览器会记住它并且下次不会再询问它。因此,当用户接受它时,每次他打开搜索页面时,它都会自动将他重定向到结果页面,而无需询问任何内容。

代码:

我们使用的是基本的 html5 地理位置代码

if (navigator.geolocation) {
   navigator.geolocation.getCurrentPosition(LocationMethod);
} 

结论:

我很确定不可能更改浏览器原生的权限。但我希望有人会为这个问题提供很好的解决方案。谢谢。

【问题讨论】:

  • “我很确定不可能更改浏览器原生的权限。” – 正确。如果用户决定第一次显示该消息,他不想再被该页面询问 - 那么就是这样。你对此无能为力。
  • 你找到解决办法了吗?

标签: javascript html browser geolocation


【解决方案1】:

一旦用户点击拒绝/允许,浏览器就会为网站记住这个决定。

避免拒绝的最佳方法是仅在用户单击表示他想使用其位置的内容时调用 getCurrentPosition(...)。然后他可能会很乐意分享它:)

foursquare 网站就是一个很好的例子。进入后,您可以前往某个城市的地图,并且只有通过单击地图上的“使用我的位置”按钮,它才会提示您。

如果您被拒绝该位置,您还可以显示一条信息消息“您过去曾拒绝此站点的位置服务,请启用它做 bla bla bla”。随便填bla bla bla。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-21
    • 1970-01-01
    • 1970-01-01
    • 2021-06-10
    • 2015-01-16
    • 1970-01-01
    相关资源
    最近更新 更多