核心提示:要在网站的前端引入一个可拖拽的地图,首先要引入百度地图的地址。这其中的ak是网络秘钥。script type=text/ src=https://api.map.baidu.com/api?v=2.0...
要在网站的前端引入一个可拖拽的地图,首先要引入百度地图的地址。这其中的ak是网络秘钥。
<script type="text/javascript" src="https://api.map.baidu.com/api?v=2.0&ak=F3fe418efd203c5d82678599f43f96af"></script>
在需要引入地图的地方,定义地图的大小等属性。
<p class="lxus_right"> <p style="width:604px;height:560px;border:#ccc solid 1px;font-size:12px" id="map"></p> </p>
以下是地图函数的具体代码实现:
<script type="text/javascript"> //创建和初始化地图函数: function initMap(){ createMap();//创建地图 setMapEvent();//设置地图事件 addMapControl();//向地图添加控件 addMapOverlay();//向地图添加覆盖物 } function createMap(){ map = new BMap.Map("map"); map.centerAndZoom(new BMap.Point(117.239947,31.822286),19); } function setMapEvent(){ map.enableScrollWheelZoom(); map.enableKeyboard(); map.enableDragging(); map.enableDoubleClickZoom() } function addClickHandler(target,window){ target.addEventListener("click",function(){ target.openInfoWindow(window); }); } function addMapOverlay(){ var markers = [ ]; for(var index = 0; index < markers.length; index++ ){ var point = new BMap.Point(markers[index].position.lng,markers[index].position.lat); var marker = new BMap.Marker(point,{icon:new BMap.Icon("https://api.map.baidu.com/lbsapi/createmap/images/icon.png",new BMap.Size(20,25),{ imageOffset: new BMap.Size(markers[index].imageOffset.width,markers[index].imageOffset.height) })}); var label = new BMap.Label(markers[index].title,{offset: new BMap.Size(25,5)}); var opts = { width: 200, title: markers[index].title, enableMessage: false }; var infoWindow = new BMap.InfoWindow(markers[index].content,opts); marker.setLabel(label); addClickHandler(marker,infoWindow); map.addOverlay(marker); }; var labels = [ {position:{lng:117.239772,lat:31.822037},content:"新城国际D座"} ]; for(var index = 0; index < labels.length; index++){ var opt = { position: new BMap.Point(labels[index].position.lng,labels[index].position.lat )}; var label = new BMap.Label(labels[index].content,opt); map.addOverlay(label); }; } //向地图添加控件 function addMapControl(){ var scaleControl = new BMap.ScaleControl({anchor:BMAP_ANCHOR_BOTTOM_LEFT}); scaleControl.setUnit(BMAP_UNIT_IMPERIAL); map.addControl(scaleControl); var navControl = new BMap.NavigationControl({anchor:BMAP_ANCHOR_TOP_LEFT,type:BMAP_NAVIGATION_CONTROL_LARGE}); map.addControl(navControl); var overviewControl = new BMap.OverviewMapControl({anchor:BMAP_ANCHOR_BOTTOM_RIGHT,isOpen:true}); map.addControl(overviewControl); } var map; initMap(); </script>