導航:首頁 > 編程語言 > 百度地圖底層代碼

百度地圖底層代碼

發布時間:2024-10-24 20:51:51

㈠ 百度地圖API基本使用(一)

網路地圖javaScript API的使用教程


在項目需求推動下,我近期研究了網路地圖API。本文將簡要介紹如何開始使用,以供開發者參考。首先,你需要注冊成為網路開發者,創建瀏覽器端應用獲取服務秘鑰(AK)。


1. 登錄開發者平台,點擊"創建應用",選擇與項目相關的應用類型,如Web項目,並設置Referer白名單。完成創建後,你會看到你的AK。


實現網路地圖的關鍵步驟如下:



  1. 創建HTML文件,如Hello.html,引用API並替換AK。

  2. 在HTML中創建地圖容器元素,並設置樣式。

  3. 實例化地圖,如`var map = new BMap.Map('container', { coordsType: 5 });`。

  4. 設置地圖中心點,可按經緯度或城市名進行。

  5. 控制地圖縮放,定義Zoom值,啟用滾輪縮放功能。

  6. 根據需要啟用或禁用商業授權掛件,並添加地圖控制項,如導航、比例尺等。

  7. 個性化地圖,使用樣式ID或jsON創建自定義樣式並應用到地圖上。


最後,確保在地圖初始化後使用`setMapStyleV2`方法應用地圖樣式,並注意更新樣式ID的管理。完整的使用流程可參考原文鏈接:[原文鏈接](zhuanlan.hu.com/p/39...),和網站鏈接:[網站鏈接]。

㈡ 百度地圖 html怎麼引入百度地圖api

1.進入:http://dev..com/wiki/static/map/API/tool/creatMap/ (創建地圖-網路地圖API所見即所得工具,網路官方地址,大家放心使用)

切換城市,搜索需標注位置。(如下圖:)

設置地圖:大家可以對網站顯示地圖的寬高進行設置,其餘選項不動。

添加標註:點擊第一個圖標後,在右側找到自己的位置,單擊滑鼠左鍵可定位。標記圖標處可更換圖標形狀,名稱和備注填入位置相關信息。(如下圖:)
步驟閱讀
完成以上4步後,點獲取代碼

獲取代碼如下:(注意:通常我們在網頁中只要插入以下代碼,小蟲標注出來,其餘的可不用。)
1.在<head></head>間插入下面代碼:這是樣式和JS腳本。
<!--引用網路地圖API-->
<style type="text/css">
html,body{margin:0;padding:0;}
.iw_poi_title {color:#CC5522;font-size:14px;font-weight:bold;overflow:hidden;padding-right:13px;white-space:nowrap}
.iw_poi_content {font:12px arial,sans-serif;overflow:visible;padding-top:4px;white-space:-moz-pre-wrap;word-wrap:break-word}
</style>
<script type="text/javascript" src="http://api.map..com/api?key=&v=1.1&services=true"></script>

2.在<body></body>間需要顯示地圖的位置放入以下代碼:(該代碼調用地圖)
<!--網路地圖容器-->
<div style="width:697px;height:550px;border:#ccc solid 1px;" id="dituContent"></div>
3.以下代碼放在頁面最底端(其實可放在頁面任意位置。)
<script type="text/javascript">
//創建和初始化地圖函數:
function initMap(){
createMap();//創建地圖
setMapEvent();//設置地圖事件
addMapControl();//向地圖添加控制項
addMarker();//向地圖中添加marker
}

//創建地圖函數:
function createMap(){
var map = new BMap.Map("dituContent");//在網路地圖容器中創建一個地圖
var point = new BMap.Point(115.949652,28.693851);//定義一個中心點坐標
map.centerAndZoom(point,18);//設定地圖的中心點和坐標並將地圖顯示在地圖容器中
window.map = map;//將map變數存儲在全局
}

//地圖事件設置函數:
function setMapEvent(){
map.enableDragging();//啟用地圖拖拽事件,默認啟用(可不寫)
map.enableScrollWheelZoom();//啟用地圖滾輪放大縮小
map.enableDoubleClickZoom();//啟用滑鼠雙擊放大,默認啟用(可不寫)
map.enableKeyboard();//啟用鍵盤上下左右鍵移動地圖
}

//地圖控制項添加函數:
function addMapControl(){
//向地圖中添加縮放控制項
var ctrl_nav = new BMap.NavigationControl({anchor:BMAP_ANCHOR_TOP_LEFT,type:BMAP_NAVIGATION_CONTROL_LARGE});
map.addControl(ctrl_nav);
//向地圖中添加縮略圖控制項
var ctrl_ove = new BMap.OverviewMapControl({anchor:BMAP_ANCHOR_BOTTOM_RIGHT,isOpen:1});
map.addControl(ctrl_ove);
//向地圖中添加比例尺控制項
var ctrl_sca = new BMap.ScaleControl({anchor:BMAP_ANCHOR_BOTTOM_LEFT});
map.addControl(ctrl_sca);
}

//標注點數組
var markerArr = [{title:"百恆網路",content:"電話:0791-88117053<br/>手機:15079002975",point:"115.950312|28.693447",isOpen:1,icon:{w:23,h:25,l:46,t:21,x:9,lb:12}}
];
//創建marker
function addMarker(){
for(var i=0;i<markerArr.length;i++){
var json = markerArr[i];
var p0 = json.point.split("|")[0];
var p1 = json.point.split("|")[1];
var point = new BMap.Point(p0,p1);
var iconImg = createIcon(json.icon);
var marker = new BMap.Marker(point,{icon:iconImg});
var iw = createInfoWindow(i);
var label = new BMap.Label(json.title,{"offset":new BMap.Size(json.icon.lb-json.icon.x+10,-20)});
marker.setLabel(label);
map.addOverlay(marker);
label.setStyle({
borderColor:"#808080",
color:"#333",
cursor:"pointer"
});

(function(){
var index = i;
var _iw = createInfoWindow(i);
var _marker = marker;
_marker.addEventListener("click",function(){
this.openInfoWindow(_iw);
});
_iw.addEventListener("open",function(){
_marker.getLabel().hide();
})
_iw.addEventListener("close",function(){
_marker.getLabel().show();
})
label.addEventListener("click",function(){
_marker.openInfoWindow(_iw);
})
if(!!json.isOpen){
label.hide();
_marker.openInfoWindow(_iw);
}
})()
}
}
//創建InfoWindow
function createInfoWindow(i){
var json = markerArr[i];
var iw = new BMap.InfoWindow("<b class='iw_poi_title' title='" + json.title + "'>" + json.title + "</b><div class='iw_poi_content'>"+json.content+"</div>");
return iw;
}
//創建一個Icon
function createIcon(json){
var icon = new BMap.Icon("http://map..com/image/us_cursor.gif", new BMap.Size(json.w,json.h),{imageOffset: new BMap.Size(-json.l,-json.t),infoWindowOffset:new BMap.Size(json.lb+5,1),offset:new BMap.Size(json.x,json.h)})
return icon;
}

initMap();//創建和初始化地圖
</script>

㈢ 如何在網頁中引入百度地圖

這個其實很簡單,下面我簡單介紹一下吧,主要過程如下:

1.首先,到網路地圖開放平台注冊一下開發者,這個直接用自己的網路賬號就行,接著點擊「控制台」->「創建應用」,如下,這里選擇「瀏覽器端」,輸入「應用名稱」:

創建成功後,就會跳轉到「應用列表」,剛才創建的應用就會顯示出來,如下,這里我們需要記住AK這個值,後面的html頁面中需要用到:

2.應用創建成功後,我們就可以在網頁中引入地圖了,代碼其高橋談實很簡單,主要是創建一個div容器,然後通過JS導入地圖,完整代碼如下:

接著我們用瀏覽器打開這個html頁面,就能正常顯示地圖了戚碰,如下:

3.這里也可以引入地鐵圖,代碼和上面的地圖類似,也是需要創建一個div容器消滑,然後再通過JS導入地鐵圖到div容器中,主要代碼如下:

用瀏覽器打開這個html頁面,效果如下,就能正常顯示地鐵圖了:

至此,我們就完成了在網頁中導入網路地圖。整個過程其實很簡單,就是創建div容器,然後通過JS將地圖引入到div容器中進行顯示就行,上面的代碼都是官方提供的示例,可以直接到官網進行查看,或者在線編輯都行,只要你有一定的前端知識,熟悉一下相關代碼和示例,很快就能掌握的,網上也有相關教程和資料,感興趣的可以搜一下,希望以上分享的內容能對你有所幫助吧,也歡迎大家評論、留言。

閱讀全文

與百度地圖底層代碼相關的資料

熱點內容
ps入門必備文件 瀏覽:348
以前的相親網站怎麼沒有了 瀏覽:15
蘋果6耳機聽歌有滋滋聲 瀏覽:768
怎麼徹底刪除linux文件 瀏覽:379
編程中字體的顏色是什麼意思 瀏覽:534
網站關鍵詞多少個字元 瀏覽:917
匯川am系列用什麼編程 瀏覽:41
筆記本win10我的電腦在哪裡打開攝像頭 瀏覽:827
醫院單位基本工資去哪個app查詢 瀏覽:18
css源碼應該用什麼文件 瀏覽:915
編程ts是什麼意思呢 瀏覽:509
c盤cad佔用空間的文件 瀏覽:89
不銹鋼大小頭模具如何編程 瀏覽:972
什麼格式的配置文件比較主流 瀏覽:984
增加目錄word 瀏覽:5
提取不相鄰兩列數據如何做圖表 瀏覽:45
r9s支持的網路制式 瀏覽:633
什麼是提交事務的編程 瀏覽:237
win10打字卡住 瀏覽:774
linux普通用戶關機 瀏覽:114

友情鏈接