|
功能的大概:用戶通過點(diǎn)擊地圖上面的位置,在地圖上面進(jìn)行描點(diǎn),然后再把獲取的到的地理位置保存到地圖上面的地址欄目中。
主要是百度地圖API的使用
復(fù)制代碼 代碼如下:
var map = new BMap.Map("allmap"); //實(shí)例化一個(gè)地圖對(duì)象
var point = new BMap.Point(116.331398,39.897445); //設(shè)置地圖中心的位置
map.centerAndZoom(point,12); //設(shè)置地圖元素的可視層
map.enableScrollWheelZoom(); //啟用滾輪放大縮小,默認(rèn)禁用
map.enableContinuousZoom(); //啟用地圖慣性拖拽,默認(rèn)禁用
function myFun(result){
var cityName = result.name;
map.setCenter(cityName);
}
var myCity = new BMap.LocalCity();
myCity.get(myFun);
i=0
//點(diǎn)擊獲取坐標(biāo)
map.addEventListener("click",function(e){
if(i === 0)
{
//存儲(chǔ)經(jīng)緯度
lng = e.point.lng;
lat = e.point.lat;
//在地圖上面描點(diǎn)
var marker = new BMap.Marker(new BMap.Point(lng,lat)); // 創(chuàng)建標(biāo)注
map.addOverlay(marker);
marker.enableDragging(); //可拖拽
var gc = new BMap.Geocoder();
//獲取地址的數(shù)據(jù)地址
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 我只是做了一些簡(jiǎn)單組合。。 慚愧呀
php技術(shù):百度地圖API應(yīng)用之獲取用戶的具體位置,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。