首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

百度地圖 API 自定義樣式:隱藏不需要的圖層與控件

     編輯:程式設計綜合問答

核心方法

  1. 圖層管理:地圖元素分為底圖、疊加層、控件。使用 map.setMapStyle({styleJson: [...]}) 自定義底圖顏色/顯隱。
  2. 控件移除:map.removeControl(control) 移除縮放、比例尺、概覽圖等。
  3. POI/標註過濾:map.setMapStyle({features: ['poi'], style: 'visibility: off'}) 隱藏興趣點。
  4. CSS 強制隱藏 (最後手段):#mapId .BMap_cpyCtrl { display: none !important; } 隱藏版權/Logo (注意協議條款)。

完整範例

var map = new BMap.Map("container");
map.centerAndZoom(new BMap.Point(116.404, 39.915), 11);

// 1. 移除預設控件
map.removeControl(map.getControl("navigation")); // 縮放
map.removeControl(map.getControl("scale"));      // 比例尺

// 2. 自定義樣式:隱藏 POI、道路標籤
map.setMapStyle({
    styleJson: [
        { featureType: "poi", elementType: "labels", stylers: { visibility: "off" } },
        { featureType: "road", elementType: "labels", stylers: { visibility: "off" } }
    ]
});

// 3. 僅保留需要的疊加層
var myOverlay = new BMap.Marker(new BMap.Point(116.404, 39.915));
map.addOverlay(myOverlay);

官方資源

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved