LeafletJS: как удалить элемент управления масштабированием
Я пытаюсь удалить элементы Zoom (+/-) на LeafletJS карта.
Я использую 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]);
на документация говорит, что есть опция zoomControl, которая удалит управление масштабированием с карты, но мне не удалось заставить его работать.
Как удалить элемент управления масштабированием с помощью это реализация?
спасибо!
7 ответов
это работа для меня.
var map = new L.Map('map', { zoomControl:false });
вы пробовали?
var map = L.mapbox.map('map', { zoomControl:false });
Если вы хотите динамически включать и выключать масштабирование вы можете сделать что-то вроде этого:
map.touchZoom.disable();
map.doubleClickZoom.disable();
map.scrollWheelZoom.disable();
map.boxZoom.disable();
map.keyboard.disable();
$(".leaflet-control-zoom").css("visibility", "hidden");
благодаря ответу координаты я смог выяснить правильный метод. Решение таково:
// 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);
динамически удалить потом добавить обратно контроль зум:
var map = L.mapbox.map('map');
if( wantToRemove ) {
map.removeControl( map.zoomControl );
} else {
map.addControl( map.zoomControl );
}