1. javascript調用百度地圖怎麼獲取所有省會城市的地標信息
在中國地圖上手動搜索出城市坐標
創建若干Label,然後將地標的名稱和經緯度傳入,再調用回map的addOverlay放到地圖上答
網路地址沒有直接的api可以實現你的要求
即使是向地圖發起搜索「省會」2個字也不行
2. 如何在前端網頁中調用第三方地圖API,實現網頁中顯示地圖信息
這里以調用高德地圖和網路地圖為例,簡單介紹一下前端姿昌網頁中如何調用第三方地圖API,主要內容如下:
調用高德地圖API
1.首先,需要注冊高德地圖開發者,這個是使用API的前提,只有正常登陸,創建應用,生成專屬的Key值,才能正常調用地圖,注冊的話,直接到官網上注冊就行,需要輸入以下信息,按照提示一步一步往下走就行,如下:
2.注冊成功後,登陸平台,點擊右上角的「控制台」,進入用戶管理界面,依次點擊「應用管理」->「我的應用」,就會跳轉到應用管理界面,點擊右上角的「創建應用」,彈出對話框,輸入應用名稱和類型,如下:
3.創建成功後,在當前的應該管理頁面就可以看到剛才創建的應用,接著就是為應用添加key值,這個直接點擊應用右邊的「+」號就行,如下,我們是網頁中引入,所以選擇「Web端(jsAPI)」,通過JS引入前端網頁:
key值添加成功後,就會在當前應用下列出來,如下,這里需要記住這個字元串,後面的代碼中要用到:
4.最後就是編寫前端測試代碼了,基本思路先創建一個div容器,然後通過JSAPI引入地圖到這個容器中就行,如下,非常簡單,key參數傳入上面的字元串就行:
用瀏覽器打開這個html文件,效果如下,已經成功引入高德地圖:
調用網路地圖API
1.首先,也是注冊網路地圖開發者,這個直接到掘冊游官網上注冊就行,或者直接使用網路賬號登陸,點擊右上角判銷的「控制台」,進入用戶界面,接著點擊「創建應用」按鈕,彈出如下界面,輸入應用名稱,因為是前端網頁引入,所以這里我們選擇「瀏覽器端」:
2.應用創建成功後,就會為當前的應用生成一個AK值,後面的代碼中就是通過這個值引入網路地圖,如下,需要記住這個字元串:
3.最後就是編寫前端測試代碼了,如下,基本步驟和高德地圖差不多,先創建一個div容器,然後通過JSAPI引入地圖到這個容器,最後就可以正常顯示,這里替換成自己應用的AK值:
用瀏覽器打開這個html文件,效果如下,已經成功引導網路地圖:
至此,我們就完成了在前端網頁中調用高德地圖API和網路地圖API。總的來說,整個過程非常簡單,步驟也很清晰,只要你熟悉一下上面的過程,很快就能掌握的,官網也給出了非常詳細的開發文檔,非常適合初學者學習,還可以在線編輯查看效果,感興趣的話,可以搜一下,希望以上分享的內容能對你有所幫助吧,也歡迎大家評論、留言。
3. 引入百度地圖js時產生的問題
頁面引入網路地圖API:
產生如仿胡下問題:
即為備帶攔報錯:A Parser-blocking, cross-origin script, is invoked via document.write.
在頁面渲染完成後就不能使用 document.write 方法。
根據 博客 的說明嘗試如下方法:
出現問題:
後來發現頁面引入的網路的js內容為:
裡麵包含了 document.write方法,非同步載入的js是不行辯允許使用document.write方法的
直接引用這兩個地址的js http://api.map..com/getscript?type=quick&file=api&ak=o9B4Ol99j9NcBXSu5nFTR7uI&t=20140109092002 和 http://api.map..com/getscript?type=quick&file=feature&ak=o9B4Ol99j9NcBXSu5nFTR7uI&t=20140109092002 就可以了
4. 百度地圖js api控制項方法怎麼用
獲取代碼如下:(注意:通常我們在網頁中只要插入以下代碼,小蟲標注出來,其餘的可不用。)
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=""></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("", 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>
當然,如果你想偷懶,將以上對應代碼全放在<body></body>間也是沒問題的,呵呵。
5. 用js 添加百度地圖,看了有關api,還是沒有實現地理位置的跳轉
這個其實蠻簡單的來吧自
你能看到的地圖其實你可以把它當做兩層。第一層是圖片,就是你能看到的地圖,像顯示的地名等等都是在圖片上。第二層是一個覆蓋層,像熱點啊,查詢顯示的線路,標記的點等等都是在這個上面。他們聯系起來的就是根據經緯度來實現的
首先,你要組織數據,查看他的api,看看他需要傳過去的參數都有什麼,像經緯度肯定是必須的,因為地圖都是靠經緯度來定位的
然後你觸發事件去調用它的api,他相對的就會給你相應的顯示
6. 如何用js實現調用百度地圖
1.進入:http://dev..com/wiki/static/map/API/tool/creatMap/ (創建地圖-網路地圖API所見即所得工具,網路官方地址,大家放心使用) 切換城市,搜專索需標注位屬置。(如下圖:) 設置地圖:大家可以對網站顯示地圖的寬高進行設置,其餘選項不...
7. js頁面調用百度地圖,在初始化打開地圖時,自動打開窗口信息而且是多個窗口信息,點位也會有很多,無需點擊!
把點擊事件的內容提到外面執行,默認就是打開。
8. javascript中調用的百度地圖上怎麼實現在所有的省會城市上添加標注
首先你得知道所有省會的坐標,後然在網路地圖的源代碼中找到
//標注點數組 var markerArr 往裡面加數組元素就行了