mrc*_*son 6 javascript html5 geolocation
我有一个通过HTTPS使用HTML5地理定位的网页.它在桌面浏览器上运行良好.但是,在iOS Safari上,我收到"Origin无权使用Geolocation服务"的错误.我确保通过HTTPS加载页面上的所有内容 - 每个图片,每个脚本和所有其他资源都在Chrome开发工具中显示HTTPS.尽管如此,地理位置会返回错误.
这是我的一些JavaScript:
if ("geolocation" in navigator) {
navigator.geolocation.getCurrentPosition(function (position) {
// Do stuff with the geo data...
}, function(error) {
// I always end up here on iOS Safari.
alert(error.code + ": " + error.message);
});
}
else {
$("#search-results").append("Location is unavailable in this browser.");
}
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
更多信息:我刚从这个W3 Schools示例中获取了代码,该代码在我的iOS Safari中完美运行,并将其粘贴到我的网站上.那没起效.我仍然没有收到允许在我的网站上进行地理定位的提示.我已清除浏览器缓存并重置设置中的位置警告无济于事.
Mat*_*ard 10
我遇到了同样的问题,这是因为Chrome(和Safari)中的Golocation API的新标准:
Chrome不再支持使用来自非安全连接提供的网页的HTML5地理位置API来获取用户的位置.
唯一的解决方案是从HTTPS托管并删除第三方的所有HTTP请求.在开发人员模式下检查您的网络选项卡以过滤掉HTTP调用,这也包括图像(在我的情况下这是麻烦).
您可以在这里阅读更多内容:从不安全起源中删除的地理位置API.
| 归档时间: |
|
| 查看次数: |
8532 次 |
| 最近记录: |