LealetJS: 如何删除缩放控件

我正在尝试移除 传单地图上的缩放控制(+/-)。

我使用的是 MapBox.js 版本的单张,但大多数操作都与传单相同。我实现我的地图如下:

var map = L.mapbox.map('map');


var layer = L.mapbox.tileLayer('MAPBOX-ID', {
format: 'jpg70',
minZoom: 13,
maxZoom: 15,
reuseTiles: true,
unloadInvisibleTiles: true
});
map.addLayer(layer);
map.setView([40.73547,-73.987856]);

文件说,有一个缩放控制选项,将删除从地图的缩放控制,但我没有得到它的工作运气。

如何使用此实现删除缩放控件?

谢谢!

87377 次浏览

这对我很有效:

var map = new L.map('map', { zoomControl: false });

使用 mapbox try:

var map = L.mapbox.map('map', { zoomControl: false });

请参阅传单文档中的 地图创建放大控制选项

多亏了坐标系的回答,我才找到了正确的方法,解决办法是:

// Create the map
var map = L.mapbox.map('map', null, { zoomControl:false });


// Create my custom layer
var layer = L.mapbox.tileLayer('MAPBOX-ID', {
format: 'jpg80',
minZoom: 13,
maxZoom:15,
tileSize: 256,
reuseTiles: true,
unloadInvisibleTiles: true
});




// Add the layer
map.addLayer(layer);
map.scrollWheelZoom.disable();

如果你想动态打开或关闭缩放,你可以这样做:

map.touchZoom.disable();
map.doubleClickZoom.disable();
map.scrollWheelZoom.disable();
map.boxZoom.disable();
map.keyboard.disable();
$(".leaflet-control-zoom").css("visibility", "hidden");

你可以用

map.zoomControl.remove();

你可以这样移除控件 zoomControl:

map.removeControl(map.zoomControl);

动态删除,然后再添加缩放控件:

var map = L.mapbox.map('map');


if( wantToRemove ) {
map.removeControl( map.zoomControl );
} else {
map.addControl( map.zoomControl );
}