您的位置:首页 > 其它

通过经纬度得到城市名称

2016-08-10 17:15 281 查看
解决办法:

通过百度JS API的逆地址解析接口。(详见:http://developer.baidu.com/map/jsdemo.htm#i7_2

代码示例:

// 检测浏览器是否支持地理定位功能
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(showPosition,showError);

} else {
alert('浏览器不支持定位功能!');
}

// 得到坐标信息
function showPosition(position)
{
var longitude = position.coords.longitude;
var latitude = position.coords.latitude;
alert("经度: " + longitude + "纬度: " + latitude);

// 使用百度地图JS API
var point = new BMap.Point(longitude,latitude);

var geoc = new BMap.Geocoder();
geoc.getLocation(point, function(rs){
var addComp = rs.addressComponents;
alert('您所在城市:'+addComp.city);
});
}

// 得到错误信息
function showError(error)
{
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;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐