在網頁中插入百度地圖(實例)

步驟

 

如何在網頁中插入百度地圖呢?javascript

2.切換城市,搜索需標註位置。(以下圖css

方法/步驟

    1. 1.進入:http://api.map.baidu.com/lbsapi/creatmap/(建立地圖-百度地圖API所見即所得工具,百度官方地址,你們放心使用)html

    2. 切換城市,搜索需標註位置。(以下圖:)java

    3. 設置地圖:你們能夠對網站顯示地圖的寬高進行設置,其他選項不動。json

    4. 添加標註:點擊第一個圖標後,在右側找到本身的位置,單擊鼠標左鍵可定位。標記圖標處可更換圖標形狀,名稱和備註填入位置相關信息。(以下圖:)api

    5. 完成以上4步後,點獲取代碼。數組

    6. 獲取代碼以下:(注意:一般咱們在網頁中只要插入如下代碼,小蟲標註出來,其他的可不用。)網絡

      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.baidu.com/api?key=&v=1.1&services=true"></script>
      ide

      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.baidu.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>

      固然,若是你想偷懶,將以上對應代碼全放在<body></body>間也是沒問題的,呵呵。

 

http://www.cnblogs.com/wgx214/archive/2013/04/27/3046467.html

相關文章
相關標籤/搜索