web 前端 - 通过 Geolocation 获取经纬度
浏览器定位
不好用,精度不够
if (navigator.geolocation) {
//一次性获取位置的请求
navigator.geolocation.getCurrentPosition(showMap);
} else {
alert('您的浏览器不支持地理位置 O(∩_∩)O~');
}
var pos = {};
pos.located = 0;
var showMap = function(position) {
//经纬度所在的位置对象
// var pos = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
//根据pos对象中的经纬度显示Google地图了哈!
//...
pos.lat = position.coords.latitude;
pos.lng = position.coords.longitude;
pos.located = 1;
百度地图定位
定位较准,各版本api效果不同
1.4 以下在非 https 服务器上直接挂了(本地 localhost 可以运行),2.0 可以在非 Chrome 浏览器上取得较准确的定位结果(Chrome 下取得的是城市中心的定位)
var geolocation = new BMap.Geolocation();
geolocation.getCurrentPosition(function (r) {
if (this.getStatus() == BMAP_STATUS_SUCCESS) {
var mk = new BMap.Marker(r.point);
alert('您的位置:' + r.point.lng + ',' + r.point.lat);
console.log(r.point);
} else {
alert('failed' + this.getStatus());
}
})
精准 ip 定位
客户端暂未使用过
当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »