百度地圖引用api實例


<DIV style="MARGIN-LEFT: 20px"><!--引用百度地圖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 src="http://api.map.baidu.com/api?key=&amp;v=1.1&amp;services=true" type=text/javascript></SCRIPT>
<!--百度地圖容器-->
<DIV id=dituContent style="BORDER-RIGHT: #ccc 1px solid; BORDER-TOP: #ccc 1px solid; BORDER-LEFT: #ccc 1px solid; WIDTH: 697px; BORDER-BOTTOM: #ccc 1px solid; HEIGHT: 550px"></DIV>
<SCRIPT type=text/javascript> 
//創建和初始化地圖函數: 
function initMap(){ 
createMap();//創建地圖 
setMapEvent();//設置地圖事件 
addMapControl();//向地圖添加控件 
addMarker();//向地圖中添加marker 
} 

//創建地圖函數: 
function createMap(){ 
var map = new BMap.Map("dituContent");//在百度地圖容器中創建一個地圖 
var point = new BMap.Point(120.041634,29.269271);//定義一箇中心點座標 
map.centerAndZoom(point,17);//設定地圖的中心點和座標並將地圖顯示在地圖容器中 
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:"貴賓熱線:400-0579-628<br/>傳真號碼:0579-85795688",point:"120.041634|29.269271",isOpen:0,icon:{w:21,h:21,l:0,t:0,x:6,lb:5}} 
]; 
//創建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://app.baidu.com/map/images/us_mk_icon.png", 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>
</DIV>


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章