为什么HTML5地理定位在不同的浏览器中有不一致的错误行为?
Why does HTML5 Geolocation have inconsistent errorneous behavior in different web browsers
我一直在测试一个简单的代码片段,它使用HTML5地理定位功能返回经度和纬度值:
var x = document.getElementById("demo");
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(showPosition, showError);
} else {
x.innerHTML = "Geolocation is not supported by this browser.";
}
}
function showPosition(position) {
x.innerHTML = "Latitude: " + position.coords.latitude +
"<br>Longitude: " + position.coords.longitude;
}
function showError(error) {
switch(error.code) {
case error.PERMISSION_DENIED:
x.innerHTML = "User denied the request for Geolocation."
break;
case error.POSITION_UNAVAILABLE:
x.innerHTML = "Location information is unavailable."
break;
case error.TIMEOUT:
x.innerHTML = "The request to get user location timed out."
break;
case error.UNKNOWN_ERROR:
x.innerHTML = "An unknown error occurred."
break;
}
}
<p>Click the button to get your coordinates.</p>
<button onclick="getLocation()">Try It</button>
<p id="demo"></p>
我测试了代码在谷歌浏览器直接从"尝试一下"部分,它返回'error.PERMISSION_DENIED'。但是,当我在本地主机下的XAMPP中部署它时,它工作了。请注意,我已经设置了谷歌Chrome浏览器共享基于此文档的位置详细信息。
但是这段代码返回'error '。POSITION_UNAVAILABLE'在Firefox中,即使在XAMPP中部署,当我同意在Firefox中共享我的位置。
是什么原因导致这种不一致的行为在谷歌浏览器(当直接调用和部署在本地主机),并通过Firefox访问时?
共享位置需要安全连接。更多:https://sites.google.com/a/chromium.org/dev/Home/chromium-security/deprecating-powerful-features-on-insecure-origins
相关文章:
- 当属性不一致时,如何根据属性对JS对象列表进行排序
- Android和JavaScript解析API之间不一致
- Javascript的行为与PHP包含文件不一致
- 对这种与document.domain和CORS相关的不一致行为的解释是什么
- 点击链接行为不一致
- Passport.js`isAuthenticated()`不一致的行为;当它应该是真的时候是假的
- SyntaxError:意外的标记else(我在代码中找不到错误)
- 与显示不一致
- Ext 4.2.1 模型日期解析在浏览器之间不一致
- 通过 Dropbox API 上传时的文件内容不一致
- JavaScript - 对象属性不一致
- Javascript 混淆了 null、instanceof 和 typeof 的语法不一致
- localeCompare 显示使用前导变音字符对单词进行排序时不一致的行为
- SVG 对象部分上的 JQuery click() 不一致
- 使用forEach和.shift()时结果不一致
- dhtmlx多个调度器不工作错误”;调度程序未定义”;
- jQuery UI的小部件“销毁”方法 - 不一致的错误
- 不一致的“与”行为-没有访问功能-这是一个chrome的错误
- gettitem";错误,规范不一致或其他东西
- 为什么HTML5地理定位在不同的浏览器中有不一致的错误行为?