手机js页面实现一键定位,并且把获取的地理位置显示到文本框中代码?

 我来答
无名小卒udl
高粉答主

2018-01-10 · 每个回答都超有意思的
知道大有可为答主
回答量:187
采纳率:100%
帮助的人:5.6万
展开全部

手机js页面实现一键定位,并且把获取的地理位置显示到文本框中代码如下:

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: '/' });

};

一、PC端通过IP实现定位代码

<script type="text/javascript" src="http://fw.qq.com/ipaddress"></script>

<script type="text/javascript">

document.write(IPData[0]);    //显示IP地址

document.write(IPData[2]);    //显示省

document.write(IPData[3]);    //显示市

</script>

二、获取客户端地址代码

<script>

var url = 'http://chaxun.1616.net/s.php?type=ip&output=json&callback=?&_=' + Math.random();

$.getJSON(url, function(data) {

alert(data.Ip);

});

</script>

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式