相信很多小伙伴看官方文檔會迷失自我,我這里就整理了三個小技巧
1. 如何動態(tài)加載百度地圖而不用實時刷新就可以獲取記錄
function loadJScript() {
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "http://api.map.baidu.com/api?v=2.0&ak=你的百度地圖AK &callback=init";
document.body.appendChild(script);
}
window.onload = loadJScript; //異步加載地圖,這一步很關鍵
2. 在百度地圖上畫一個圓圈,
// 百度地圖API功能
var map = new BMap.Map("allmap"); // 創(chuàng)建Map實例
var mPoint = new BMap.Point(經(jīng)緯度);
map.enableScrollWheelZoom();
map.centerAndZoom(mPoint,13); //讓百度地圖以你的輸入的經(jīng)緯度為中心,并展示在地圖中
map.addOverlay(new BMap.Marker(mPoint));
var circle = new BMap.Circle(mPoint,范圍 *1000,{fillColor:"blue", strokeWeight: 1 ,fillOpacity: 0.3, strokeOpacity: 0.3});
map.addOverlay(circle);//這一步就是把圓圈添加到百度地圖上
circle.addEventListener("lineupdate", function (e) {
console.log(circle.getRadius()); //返回圓形覆蓋物的半徑
});
// var local = new BMap.LocalSearch(map, {renderOptions: {map: map, autoViewport: true}});
3. 百度經(jīng)緯度獲取
var map = new BMap.Map("allmap");
// 創(chuàng)建地址解析器實例
var myGeo = new BMap.Geocoder();
// 將地址解析結果顯示在地圖上,并調(diào)整地圖視野
myGeo.getPoint(經(jīng)緯度, function(point){
if (point) {
map.centerAndZoom(point, 16);
map.addOverlay(new BMap.Marker(point));
alert(point.lat + "," + point.lng+'|'+point.lat + "," + point.lng)
}else{
alert("您選擇地址沒有解析到結果!");
}
}, $province.text());
4. 百度地圖坐標拖動效果以及獲取經(jīng)緯度
map.addEventListener("click",function(e){//設置監(jiān)聽點擊事件
var marker = new BMap.Marker(new BMap.Point(e.point.lng,e.point.lat));
marker.enableDragging();
marker.addEventListener("dragend", function(e){ //設置監(jiān)聽鼠標拖動事件
map.addOverlay(marker);
alert (e.point.lat + "," + e.point.lng+'|'+e.point.lat + "," + e.point.lng)
})
map.clearOverlays();//方式坐標多次標注到地圖上
map.addOverlay(marker);//拖動結束并添加標注到地圖
});
文章來源:萬動力技術開發(fā)
奔跑的代碼
萬動力(www.lu123123.com),專業(yè)的logo免費設計在線生成網(wǎng)站,全自動智能化logo設計,商標設計,logo在線生成!
歡迎使用萬動力制作屬于您公司自己的logo,不僅專業(yè)而且經(jīng)濟實惠,全方位滿足您公司品牌化、視覺化的需求。