核心方法
- 圖層管理:地圖元素分為底圖、疊加層、控件。使用
map.setMapStyle({styleJson: [...]}) 自定義底圖顏色/顯隱。
- 控件移除:
map.removeControl(control) 移除縮放、比例尺、概覽圖等。
- POI/標註過濾:
map.setMapStyle({features: ['poi'], style: 'visibility: off'}) 隱藏興趣點。
- 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);
官方資源