百度地图API引用方式

作者:Kinglong    发表时间:2023-07-15 06:23   

关键词:  

1、直接通过http/https方式引用API js库,如下

             <script type="text/javascript" src="https://api.map.baidu.com/api?v=2.0&ak=b32lBo1C2DnpzToMuT1URU79KV5Fl80K"></script>    其中ak=b32lBo1C2DnpzToMuT1URU79KV5Fl80K 为你在百度地图官网注册账号时生成的key
             <script type="text/javascript" src="https://api.map.baidu.com/library/TextIconOverlay/1.2/src/TextIconOverlay_min.js"></script>
             <script type="text/javascript" src="https://api.map.baidu.com/library/MarkerClusterer/1.2/src/MarkerClusterer_min.js"></script>

2、把百度地图API js库下载到本地调用,下载js库也分http和https版本,

       如下载https版本:在浏览器中访问如下三个链接地址,把返回的内容copy出来在本地保存成对应的js文件,如要修改源码,需要对copy出来的js文件进行解压。

下载地址如下:

 https://api.map.baidu.com/api?v=2.0&ak=b32lB**C2DnpzToMuT1URU79KV5Fl8**                

 其中ak=b32lB**C2DnpzToMuT1URU79KV5Fl8*为在百度地图官网注册账号时生成的key

 https://api.map.baidu.com/library/TextIconOverlay/1.2/src/TextIconOverlay_min.js

 https://api.map.baidu.com/library/MarkerClusterer/1.2/src/MarkerClusterer_min.js

  引入方式代码如下:

      <script type="text/javascript" src="plugins/baidumap/mapkey-1.js"></script>    //百度地图生成的KEY文件内容和请求方式(http/https)
   <script type="text/javascript" src="plugins/baidumap/texticon-overlay.js"></script>         //其他API
    <script type="text/javascript" src="plugins/baidumap/marker-clusterer.js"></script>       //该js文件主要是聚合点处理逻辑API

3、百度地图开放平台及相关页面链接

1)百度地图开放平台:http://lbsyun.baidu.com/

2)web开发API:http://lbsyun.baidu.com/index.php?title=jspopular3.0

3)demo地址:http://lbsyun.baidu.com/jsdemo.htm#canvaslayer

4)web JavaScript API v3.0 :http://lbsyun.baidu.com/cms/jsapi/reference/jsapi_reference_3_0.html

4、地图初始化示例

 <div id="map" style="height: 100%;width: 100%;margin-left: 0px;">   

 var map=new BMap.Map("map");// 创建地图实例;

 var markers= [];

 markers.push(new BMap.Marker(point));

 var markerClusterer= new BMapLib.MarkerClusterer(map);

 markerClusterer.addMarkers(this.markers);

 map.enableScrollWheelZoom(); //启用滚轮放大缩小,默认禁用
 map.enableContinuousZoom(); //启用地图惯性拖拽,默认禁用
 map.addControl(new BMap.NavigationControl()); //添加默认缩放平移控件
 map.addControl(new BMap.OverviewMapControl()); //添加默认缩略地图控件
 map.addControl(new BMap.OverviewMapControl({isOpen: true, anchor:    

BMAP_ANCHOR_BOTTOM_RIGHT})); //右下角,打开
 map.setMaxZoom(18);
 convertor = new BMap.Convertor();
 markerClusterer = new BMapLib.MarkerClusterer(map);
 map.addEventListener("zoomend",(e)=> {

   //地图更改缩放级别结束时触发触发此事件
   this.markerClustererEvent();
 });
  map.addEventListener("moveend",(e)=> {

  //地图移动结束时触发此事件
   this.markerClustererEvent();
 });

//聚合点点击事件处理逻辑
 markerClustererEvent(){
     for(var i=0;i<this.markerClusterer._clusters.length;i++){
          let currentCluster=this.markerClusterer._clusters[i];

          currentCluster._clusterMarker.addEventListener("click",(ev)=> {

                 // 每个聚合点的点击事件

   }

})

}