LeafletJS:如何删除缩放控件

Bre*_*ody 52 javascript map leaflet mapbox

我正在尝试删除LeafletJS地图上的缩放控件(+/-).

我正在使用LeafletMapBox.js版本,但大多数操作与Leaflet相同.我像这样实现我的地图:

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]);
Run Code Online (Sandbox Code Playgroud)

文件说,有将从地图中删除变焦控制zoomControl可选项,但我已经得到它的工作没有运气.

如何通过此实现删除缩放控件?

谢谢!

coo*_*ate 92

这对我有用.

var map = new L.map('map', { zoomControl: false });
Run Code Online (Sandbox Code Playgroud)

你试过了吗?

var map = L.mapbox.map('map', { zoomControl: false });
Run Code Online (Sandbox Code Playgroud)

  • `var map = L.mapbox.map('map',{zoomControl:false});`不起作用,第二个参数需要是指定地图类型的字符串,第三个参数采用`{zoomControl:false} ` (2认同)
  • 对于那些只想禁用鼠标滚轮缩放但不能使用地图上的+和 - 按钮禁用缩放功能的人,用`scrollWheelZoom替换`zoomControl` (2认同)

小智 48

如果要动态打开和关闭缩放,可以执行以下操作:

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

  • 对于那些想要禁用拖动功能的人,也可以这样做:map.dragging.disable(); (8认同)

Bre*_*ody 16

由于坐标的答案,我能够找出正确的方法.解决方案是:

// 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);
Run Code Online (Sandbox Code Playgroud)


leo*_*rdo 10

你可以这样删除控件zoomControl:

map.removeControl(map.zoomControl);
Run Code Online (Sandbox Code Playgroud)


小智 7

你可以使用

map.zoomControl.remove();

  • 在我的情况下得到一个 TypeError: map.zoomControl.remove is not a function。我发现的方法是使用这样的 `removeControl` 函数:`map.removeControl(map.zoomControl);` (2认同)

小智 6

要动态删除然后添加回缩放控件:

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

if( wantToRemove ) {
    map.removeControl( map.zoomControl ); 
} else {
    map.addControl( map.zoomControl );
}
Run Code Online (Sandbox Code Playgroud)


Ani*_*nik 5

map.scrollWheelZoom.disable();
Run Code Online (Sandbox Code Playgroud)