百度地图API应用之获取用户的具体位置

 更新时间:2014年06月10日 08:54:57   作者:  
以前一直用高德地图的API,后来因为需求,必须用百度的地图API。这些API都已经封装的很智能了,只需要一定的编程思维,就很简单可以实现功能。

功能的大概:用户通过点击地图上面的位置,在地图上面进行描点,然后再把获取的到的地理位置保存到地图上面的地址栏目中。

主要是百度地图API的使用

复制代码 代码如下:

var map = new BMap.Map("allmap"); //实例化一个地图对象
var point = new BMap.Point(116.331398,39.897445); //设置地图中心的位置
map.centerAndZoom(point,12); //设置地图元素的可视层

map.enableScrollWheelZoom();    //启用滚轮放大缩小,默认禁用
map.enableContinuousZoom();    //启用地图惯性拖拽,默认禁用

function myFun(result){
    var cityName = result.name;
    map.setCenter(cityName);

}
var myCity = new BMap.LocalCity();
myCity.get(myFun);

i=0
//点击获取坐标
map.addEventListener("click",function(e){

    if(i === 0)
    {
     //存储经纬度
     lng = e.point.lng;
     lat = e.point.lat;

     //在地图上面描点
     var marker = new BMap.Marker(new BMap.Point(lng,lat));  // 创建标注
     map.addOverlay(marker);
     marker.enableDragging();    //可拖拽

    var gc = new BMap.Geocoder();
     //获取地址的数据地址
     var pt = e.point;
     gc.getLocation(pt, function(rs){
     var addComp = rs.addressComponents;
     address = addComp.province +  addComp.city + addComp.district + addComp.street + addComp.streetNumber;

     //画图
     var label = new BMap.Label(address,{offset:new BMap.Size(20,-10)});
      marker.setLabel(label);
     });

     i=1;
    }

});

上面的代码基本都是百度提供的DOME 我只是做了一些简单组合。。 惭愧呀

相关文章

最新评论