功能的大概:用户通过点击地图上面的位置,在地图上面进行描点,然后再把获取的到的地理位置保存到地图上面的地址栏目中。
主要是百度地图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;
}});
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;
}});