function getAddr() {
window.navigator.geolocation.getCurrentPosition(
function (position) {
var longitude = position.coords.longitude;
var latitude = position.coords.latitude;
alert(longitude);
alert(latitude);
},
function onError(error) {
//alert(error.message);
switch (error.code) {
case error.PERMISSION_DENIED:
alert("您拒绝对获取地理位置的请求");
break;
case error.POSITION_UNAVAILABLE:
alert("位置信息是不可用的");
break;
case error.TIMEOUT:
alert("请求您的地理位置超时");
break;
case error.UNKNOWN_ERROR:
alert("未知错误");
break;
}
}
);
};
经纬度位置无法获取的情况:
1. 网址必须为域名,不能用ip直接访问,否则手机浏览器直接拒绝改请求。
2. iphone的浏览器(包括微信扫码进入网站) ,亲测调用 http 的网站是不能获取到经纬度的,是苹果手机安全的考虑,如果使用https网站的话,证书也必须是有效证书(无效证书的时候浏览器访问会提示该网站不安全是否继续访问,即使“继续访问”也不能获取经纬度)。
3. 获取经纬度会询问用户是否同意获取,用户拒绝的话自然也不能获取到。
4. 电脑浏览器不能获取经纬度,虽然会有弹窗请求。