HTML5定位是优先采用GPS,失败就用网络信号,比如IP地址,WiFi,蓝牙等等。而且它明确说明,不能保证返回结果的正确性。
简单例子如下,具体的API可参考这篇博客。
if (navigator.geolocation) {
console.log("h5 定位中");
navigator.geolocation.getCurrentPosition(function(position) {
var latitude = position.coords.latitude;
var longitude = position.coords.longitude;
console.log('h5定位成功;');
}, function(error) {
console.log('h5定失败;');
})
}
Geolocation API规范提供了一套保护用户隐私的机制,必须先得到用户明确许可,才能获取用户的位置信息。
看起来这是个很不错的方式,现代浏览器都已经支持HTML5了。不幸的是,Chrome浏览器从50版本开始,http协议的网址是不能用了。需要使用https方可使用