本文主要为大家详细介绍了js获取当前地理位置的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能帮助到大家。
本文实例为大家分享了js获取当前地理位置方法的具体代码,供大家参考,具体内容如下
1.手机定位
var getlocation = function (successfunc, errorfunc) {
//successfunc获取定位成功回调函数,errorfunc获取定位失败回调
//首先设置默认城市
var defcity = {
id: '000001',
name: '北京市',
date: curdatetime()//获取当前时间方法
};
//默认城市
$.cookie('vpiao_mobile_defaultcity', json.stringify(defcity), { expires: 1, path: '/' });
if (navigator.geolocation) {
navigator.geolocation.getcurrentposition(function (position) {
var lat = position.coords.latitude;
var lon = position.coords.longitude;
//var map = new bmap.map("container"); // 创建map实例
var point = new bmap.point(lon, lat); // 创建点坐标
var gc = new bmap.geocoder();
gc.getlocation(point, function (rs) {
var addcomp = rs.addresscomponents;
var curcity = {
id: '',
name: addcomp.province,
date: curdatetime()
};
//当前定位城市
$.cookie('vpiao_mobile_currentcity', json.stringify(curcity), { expires: 7, path: '/' });
//alert(addcomp.province + ", " + addcomp.city + ", " + addcomp.district + ", " + addcomp.street);
if (successfunc != undefined)
successfunc(addcomp);
});
},
function (error) {
switch (error.code) {
case 1:
alert("位置服务被拒绝。");
break;
case 2:
alert("暂时获取不到位置信息。");
break;
case 3:
alert("获取位置信息超时。");
break;
default:
alert("未知错误。");
break;
}
var curcity = {
id: '000001',
name: '北京市',
date: curdatetime()
};
//默认城市
$.cookie('vpiao_mobile_defaultcity', json.stringify(curcity), { expires: 1, path: '/' });
if (errorfunc != undefined)
errorfunc(error);
}, { timeout: 5000, enablehighaccuracy: true });
} else {
alert("你的浏览器不支持获取地理位置信息。");
if (errorfunc != undefined)
errorfunc("你的浏览器不支持获取地理位置信息。");
}
};
var showposition = function (position) {
var lat = position.coords.latitude;
var lon = position.coords.longitude;
//var map = new bmap.map("container"); // 创建map实例
var point = new bmap.point(lon, lat); // 创建点坐标
var gc = new bmap.geocoder();
gc.getlocation(point, function (rs) {
var addcomp = rs.addresscomponents;
var curcity = {
id: '',
name: addcomp.province,
date: curdatetime()
};
//当前定位城市
$.cookie('vpiao_mobile_currentcity', json.stringify(curcity), { expires: 7, path: '/' });
//alert(addcomp.province + ", " + addcomp.city + ", " + addcomp.district + ", " + addcomp.street);
});
};
var showpositionerror = function (error) {
switch (error.code) {
case 1:
alert("位置服务被拒绝。");
break;
case 2:
alert("暂时获取不到位置信息。");
break;
case 3:
alert("获取位置信息超时。");
break;
default:
alert("未知错误。");
break;
}
var curcity = {
id: '000001',
name: '北京市',
date: curdatetime()
};
//默认城市
$.cookie('vpiao_mobile_defaultcity', json.stringify(curcity), { expires: 1, path: '/' });
};
前提要引入百度api: <script src="http://api.map.baidu.com/api?v=1.4" type="text/javascript"></script>
2.获取客户端ip方法
<script>
var url = 'http://chaxun.1616.net/s.php?type=ip&output=json&callback=?&_=' + math.random();
$.getjson(url, function(data) {
alert(data.ip);
});
</script>
相关推荐:
如何通过微信获取当前地理位置并将其存到session中
微信开发接收地理位置和链接的接口与参数
js实现pc端根据ip定位当前城市地理位置
以上就是js获取当前地理位置的方法实例的详细内容。