10

为什么我们需要它:

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

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

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

问题:

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

代码:

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

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

结论:

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

4

1 回答 1

15

一旦用户单击拒绝/允许,浏览器就会记住该站点的此决定。

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

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

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

于 2013-10-23T18:26:05.717 回答