Spec-Zone.ru › Leaflet 1.2

Справочник по API Leaflet

Карта

Основной класс API — он используется для создания карты на странице и управления ею.

Пример использования

// initialize the map on the "map" div with a given center and zoom
var map = L.map('map', {
    center: [51.505, -0.09],
    zoom: 13
});

Создание

Фабрика Описание
L.map(<String> id, <Map options> options?) Создает объект карты, используя ID DOM-элемента <div> и, необязательно, объект с Map options.
L.map(<HTMLElement> el, <Map options> options?) Создает объект карты, используя экземпляр HTML-элемента <div> и, необязательно, объект с Map options.

Параметры

Параметр Тип Значение по умолчанию Описание
preferCanvas Boolean false Определяет, должны ли Path отрисовываться с помощью рендерера Canvas. По умолчанию все Path отрисовываются с помощью рендерера SVG.

Параметры управления

Параметр Тип Значение по умолчанию Описание
attributionControl Boolean true Определяет, добавляется ли управление атрибутами к карте по умолчанию.
zoomControl Boolean true Определяет, добавляется ли управление масштабом к карте по умолчанию.

Параметры взаимодействия

Параметр Тип Значение по умолчанию Описание
closePopupOnClick Boolean true Установите в false, если не хотите, чтобы всплывающие окна закрывались при клике на карту.
zoomSnap Number 1 Принудительно устанавливает уровень масштаба карты всегда кратным этому значению, особенно после fitBounds() или при масштабировании. По умолчанию уровень масштаба округляется до ближайшего целого числа; меньшие значения (например, 0.5 или 0.1) позволяют использовать более точное масштабирование. Значение 0 означает, что уровень масштаба не будет округляться после fitBounds или при масштабировании.
zoomDelta Number 1 Управляет изменением уровня масштаба карты после zoomIn(), zoomOut(), нажатия на + или - на клавиатуре или использования управления масштабом. Значения меньше чем 1 (например, 0.5) позволяют использовать более точное масштабирование.
trackResize Boolean true Определяет, автоматически ли карта обрабатывает изменение размера окна браузера для обновления.
boxZoom Boolean true Определяет, можно ли масштабировать карту до прямоугольной области, перетаскивая мышь, удерживая клавишу Shift.
doubleClickZoom Boolean|String true Определяет, можно ли масштабировать карту с помощью двойного щелчка, а также уменьшать масштаб с удерживанием клавиши Shift. Если передано 'center', масштабирование двойным щелчком будет масштабировать до центра вида независимо от того, где была мышь.
dragging Boolean true Определяет, может ли карта перетаскиваться мышкой/пальцем или нет.

Параметры состояния карты

Параметр Тип Значение по умолчанию Описание
crs CRS L.CRS.EPSG3857 Используемая система координат. Не изменяйте это значение, если вы не уверены, что знаете, что это значит.
center LatLng undefined Начальный географический центр карты
zoom Number undefined Начальный уровень масштаба карты
minZoom Number * Минимальный уровень масштаба карты. Если не указано, и на карте присутствует хотя бы один GridLayer или TileLayer, будет использовано наименьшее из значений их параметра minZoom.
maxZoom Number * Максимальный уровень масштаба карты. Если не указано, и на карте присутствует хотя бы один GridLayer или TileLayer, будет использовано наибольшее из значений их параметра maxZoom.
layers Layer[] [] Массив слоев, которые будут добавлены на карту изначально
maxBounds LatLngBounds null При установке этого параметра карта ограничивает просмотр заданными географическими границами, возвращая пользователя обратно, если пользователь пытается прокрутить за пределы отображаемого участка. Для динамической установки ограничений используйте метод setMaxBounds.
renderer Renderer * По умолчанию используется метод отрисовки векторных слоев на карте. L.SVG или L.Canvas, в зависимости от поддержки браузером.

Параметры анимации

Параметр Тип Значение по умолчанию Описание
zoomAnimation Boolean true Включить анимацию масштабирования карты. По умолчанию включено во всех браузерах, поддерживающих CSS3 Transitions, за исключением Android.
zoomAnimationThreshold Number 4 Не анимировать масштабирование, если разница в масштабе превышает это значение.
fadeAnimation Boolean true Включить анимацию плавного перехода плиток. По умолчанию включено во всех браузерах, поддерживающих CSS3 Transitions, за исключением Android.
markerZoomAnimation Boolean true Анимировать масштабирование маркеров вместе с анимацией масштабирования карты. Если отключено, маркеры исчезнут на время анимации. По умолчанию включено во всех браузерах, поддерживающих CSS3 Transitions, за исключением Android.
transform3DLimit Number 2^23 Определяет максимальный размер преобразования CSS-перевода. Значение по умолчанию не следует изменять, если браузер неверно позиционирует слои после большого panBy.

Параметры инерции при перемещении

Параметр Тип Значение по умолчанию Описание
inertia Boolean * Если включено, перемещение карты будет иметь эффект инерции, где карта набирает импульс во время перетаскивания и продолжает движение в том же направлении некоторое время. Особенно приятно на сенсорных устройствах. Включено по умолчанию, если не используется старая версия Android.
inertiaDeceleration Number 3000 Скорость замедления инерционного движения в пикселях/секунду².
inertiaMaxSpeed Number Infinity Максимальная скорость инерционного движения в пикселях/секунду.
easeLinearity Number 0.2
worldCopyJump Boolean false Включив этот параметр, карта отслеживает, когда вы перемещаетесь на другую "копию" мира, и плавно переходит к исходной, так что все наложения, такие как маркеры и векторные слои, по-прежнему видны.
maxBoundsViscosity Number 0.0 Если maxBounds установлено, этот параметр будет управлять тем, насколько жёсткими являются границы при перетаскивании карты. Значение по умолчанию 0.0 позволяет пользователю перетаскивать за пределы границ с нормальной скоростью, более высокие значения будут замедлять перетаскивание за пределы границ, а 1.0 делает границы полностью жёсткими, препятствуя перетаскиванию за их пределы.

Параметры навигации с клавиатуры

Параметр Тип Значение по умолчанию Описание
keyboard Boolean true Делает карту фокусируемой и позволяет пользователям перемещать карту стрелками клавиатуры и клавишами +/-.
keyboardPanDelta Number 80 Количество пикселей для перемещения при нажатии на стрелочную клавишу.

Параметры колесика мыши

Опция Тип Значение по умолчанию Описание
scrollWheelZoom Boolean|String true Включает/отключает возможность масштабирования карты при помощи колесика мыши. Если передано 'center', карта будет масштабироваться к центру просмотра независимо от позиции курсора.
wheelDebounceTime Number 40 Ограничивает частоту срабатывания колесика (в миллисекундах). По умолчанию, пользователь не может масштабировать карту при помощи колесика чаще, чем один раз в 40 мс.
wheelPxPerZoomLevel Number 60 Количество прокрученных пикселей (как сообщается функцией L.DomEvent.getWheelDelta), необходимых для изменения уровня масштабирования на единицу. Меньшие значения сделают масштабирование колесиком быстрее (и наоборот).

Параметры взаимодействия с сенсорным экраном

Опция Тип Значение по умолчанию Описание
tap Boolean true Включает мобильные хакеры для поддержки мгновенных нажатий (исправляет задержку нажатия в 200 мс на iOS/Android) и удержаний (вызванных как события contextmenu).
tapTolerance Number 15 Максимальное количество пикселей, на которое пользователь может сместить палец во время касания, чтобы оно считалось действительным касанием.
touchZoom Boolean|String * Включает/отключает возможность масштабирования карты при помощи двухпальцевого свайпа. Если передано 'center', карта будет масштабироваться к центру просмотра независимо от того, где произошли события касания (пальцы). Включено для браузеров с поддержкой сенсорного управления, за исключением устаревших версий Android.
bounceAtZoomLimits Boolean true Установите в значение false, если не нужно, чтобы карта масштабировалась за пределы минимального/максимального масштаба и затем возвращалась назад при масштабировании пинцетом.

События

События слоев

Событие Данные Описание
baselayerchange LayersControlEvent Fired when the base layer is changed through the layer control.
overlayadd LayersControlEvent Fired when an overlay is selected through the layer control.
overlayremove LayersControlEvent Fired when an overlay is deselected through the layer control.
layeradd LayerEvent Fired when a new layer is added to the map.
layerremove LayerEvent Fired when some layer is removed from the map

События изменения состояния карты

Событие Данные Описание
zoomlevelschange Event Fired when the number of zoomlevels on the map is changed due to adding or removing a layer.
resize ResizeEvent Fired when the map is resized.
unload Event Fired when the map is destroyed with remove method.
viewreset Event Fired when the map needs to redraw its content (this usually happens on map zoom or load). Very useful for creating custom overlays.
load Event Fired when the map is initialized (when its center and zoom are set for the first time).
zoomstart Event Fired when the map zoom is about to change (e.g. before zoom animation).
movestart Event Fired when the view of the map starts changing (e.g. user starts dragging the map).
zoom Event Fired repeatedly during any change in zoom level, including zoom and fly animations.
move Event Fired repeatedly during any movement of the map, including pan and fly animations.
zoomend Event Fired when the map has changed, after any animations.
moveend Event Fired when the center of the map stops changing (e.g. user stopped dragging the map).

События всплывающих окон

Событие Данные Описание
popupopen PopupEvent Fired when a popup is opened in the map
popupclose PopupEvent Fired when a popup in the map is closed
autopanstart Event Fired when the map starts autopanning when opening a popup.

События всплывающих подсказок

Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip is opened in the map.
tooltipclose TooltipEvent Fired when a tooltip in the map is closed.

События местоположения

Событие Данные Описание
locationerror ErrorEvent Fired when geolocation (using the locate method) failed.
locationfound LocationEvent Fired when geolocation (using the locate method) went successfully.

События взаимодействия

Событие Данные Описание
click MouseEvent Fired when the user clicks (or taps) the map.
dblclick MouseEvent Fired when the user double-clicks (or double-taps) the map.
mousedown MouseEvent Fired when the user pushes the mouse button on the map.
mouseup MouseEvent Fired when the user releases the mouse button on the map.
mouseover MouseEvent Fired when the mouse enters the map.
mouseout MouseEvent Fired when the mouse leaves the map.
mousemove MouseEvent Fired while the mouse moves over the map.
contextmenu MouseEvent Fired when the user pushes the right mouse button on the map, prevents default browser context menu from showing if there are listeners on this event. Also fired on mobile when the user holds a single touch for a second (also called long press).
keypress KeyboardEvent Fired when the user presses a key from the keyboard while the map is focused.
preclick MouseEvent Fired before mouse click on the map (sometimes useful when you want something to happen on click before any existing click handlers start running).

Другие методы

Событие Данные Описание
zoomanim ZoomAnimEvent Fired on every frame of a zoom animation

Методы

Метод Возвращает Описание
getRenderer(<Path> layer) Renderer

Возвращает экземпляр Renderer, который следует использовать для отрисовки заданного Path. Он гарантирует, что параметры отрисовки renderer карты и путей будут учтены и что отрисовщики существуют на карте.

Методы для слоев и элементов управления

Метод Возвращает Описание
addControl(<Control> control) this

Добавляет заданный элемент управления на карту

removeControl(<Control> control) this

Удаляет заданный элемент управления с карты

addLayer(<Layer> layer) this

Добавляет заданный слой на карту

removeLayer(<Layer> layer) this

Удаляет заданный слой с карты.

hasLayer(<Layer> layer) Boolean

Возвращает true, если заданный слой в настоящее время добавлен на карту

eachLayer(<Function> fn, <Object> context?) this

Перебирает слои карты, необязательно указывая контекст функции-итератора.

map.eachLayer(function(layer){
    layer.bindPopup('Hello');
});
openPopup(<Popup> popup) this

Открывает указанное всплывающее окно, закрывая ранее открытое (чтобы гарантировать открытие только одного всплывающего окна в одно время для удобства использования).

openPopup(<String|HTMLElement> content, <LatLng> latlng, <Popup options> options?) this

Создаёт всплывающее окно с указанным содержимым и параметрами и открывает его в заданной точке на карте.

closePopup(<Popup> popup?) this

Закрывает всплывающее окно, ранее открытое с помощью openPopup (или указанное).

openTooltip(<Tooltip> tooltip) this

Открывает указанную подсказку.

openTooltip(<String|HTMLElement> content, <LatLng> latlng, <Tooltip options> options?) this

Создаёт подсказку с указанным содержимым и параметрами и открывает её.

closeTooltip(<Tooltip> tooltip?) this

Закрывает подсказку, заданную в качестве параметра.

Методы для изменения состояния карты

Метод Возвращает Описание
setView(<LatLng> center, <Number> zoom, <Zoom/pan options> options?) this

Устанавливает вид карты (географический центр и масштаб) с заданными параметрами анимации.

setZoom(<Number> zoom, <Zoom/pan options> options?) this

Устанавливает масштаб карты.

zoomIn(<Number> delta?, <Zoom options> options?) this

Увеличивает масштаб карты на delta (zoomDelta по умолчанию).

zoomOut(<Number> delta?, <Zoom options> options?) this

Уменьшает масштаб карты на delta (zoomDelta по умолчанию).

setZoomAround(<LatLng> latlng, <Number> zoom, <Zoom options> options) this

Изменяет масштаб карты, удерживая указанную географическую точку на карте неподвижной (например, используется во внутреннем масштабировании прокруткой и двойным щелчком).

setZoomAround(<Point> offset, <Number> zoom, <Zoom options> options) this

Изменяет масштаб карты, удерживая указанную точку пикселей на карте (относительно левого верхнего угла) неподвижной.

fitBounds(<LatLngBounds> bounds, <fitBounds options> options?) this

Устанавливает вид карты, содержащий заданные географические границы с максимальным возможным уровнем масштаба.

fitWorld(<fitBounds options> options?) this

Устанавливает вид карты, в основном содержащий весь мир с максимальным возможным уровнем масштаба.

panTo(<LatLng> latlng, <Pan options> options?) this

Перемещает карту в заданный центр.

panBy(<Point> offset, <Pan options> options?) this

Перемещает карту на заданное количество пикселей (с анимацией).

flyTo(<LatLng> latlng, <Number> zoom?, <Zoom/pan options> options?) this

Устанавливает вид карты (географический центр и масштаб) с плавной анимацией перемещения и изменения масштаба.

flyToBounds(<LatLngBounds> bounds, <fitBounds options> options?) this

Устанавливает вид карты с плавной анимацией, как в flyTo, но принимает параметр границ, как в fitBounds.

setMaxBounds(<Bounds> bounds) this

Ограничивает вид карты заданными границами (см. параметр maxBounds).

setMinZoom(<Number> zoom) this

Устанавливает нижнюю границу доступных уровней масштаба (см. параметр minZoom).

setMaxZoom(<Number> zoom) this

Устанавливает верхнюю границу доступных уровней масштаба (см. параметр maxZoom).

panInsideBounds(<LatLngBounds> bounds, <Pan options> options?) this

Перемещает карту в ближайший вид, который находился бы внутри заданных границ (если это не так уже), контролируя анимацию с помощью соответствующих параметров, если таковые имеются.

invalidateSize(<Zoom/Pan options> options) this

Проверяет, изменился ли размер контейнера карты, и обновляет карту, если это так — вызывайте его после динамического изменения размера карты, также выполняя анимацию перемещения по умолчанию. Если options.pan равно false, перемещение не произойдёт. Если options.debounceMoveend равно true, он задержит событие moveend, чтобы оно не происходило часто, даже если метод вызывается много раз подряд.

invalidateSize(<Boolean> animate) this

Проверяет, изменился ли размер контейнера карты, и обновляет карту, если это так — вызывайте его после динамического изменения размера карты, также выполняя анимацию перемещения по умолчанию.

stop() this

Останавливает текущую анимацию panTo или flyTo, если таковая имеется.

Методы геолокации

Метод Возвращает Описание
locate(<Locate options> options?) this

Пытается определить местоположение пользователя с помощью API геолокации, вызывая событие locationfound с данными местоположения при успехе или событие locationerror при неудаче, и, необязательно, устанавливает вид карты в местоположение пользователя с учётом точности определения (или во внешний вид, если геолокация не удалась). Обратите внимание, что, если ваша страница не использует HTTPS, этот метод потерпит неудачу в современных браузерах (Chrome 50 и новее). См. Locate options для получения дополнительной информации.

stopLocate() this

Останавливает отслеживание местоположения, ранее начатого методом map.locate({watch: true}) и отменяет сброс вида карты, если map.locate был вызван с {setView: true}.

Другие методы

Метод Возвращает Описание
addHandler(<String> name, <Function> HandlerClass) this

Добавляет новый Handler на карту, задав его имя и конструкторскую функцию.

remove() this

Уничтожает карту и очищает все связанные слушатели событий.

createPane(<String> name, <HTMLElement> container?) HTMLElement

Создаёт новый панель карты с заданным именем, если она ещё не существует, затем возвращает её. Панель создаётся как дочерний элемент container или как дочерний элемент основной панели карты, если не задано другое.

getPane(<String|HTMLElement> pane) HTMLElement

Возвращает панель карты по имени или её HTML-элементу (ее идентификатору).

getPanes() Object

Возвращает простой объект, содержащий имена всех панелей в качестве ключей и сами панели в качестве значений.

getContainer() HTMLElement

Возвращает HTML-элемент, содержащий карту.

whenReady(<Function> fn, <Object> context?) this

Выполняет заданную функцию fn, когда карта инициализируется с видом (центром и масштабом) и по крайней мере одним слоем, или немедленно, если она уже инициализирована, необязательно передавая контекст функции.

Методы для получения состояния карты

Метод Возвращает Описание
getCenter() LatLng

Возвращает географический центр вида карты.

getZoom() Number

Возвращает текущий уровень масштаба вида карты.

getBounds() LatLngBounds

Возвращает географические границы, видимые в текущем виде карты.

getMinZoom() Number

Возвращает минимальный уровень масштаба карты (если он задан в параметре minZoom карты или любых слоёв), или 0 по умолчанию.

getMaxZoom() Number

Возвращает максимальный уровень масштаба карты (если он задан в параметре maxZoom карты или любых слоёв).

getBoundsZoom(<LatLngBounds> bounds, <Boolean> inside?) Number

Возвращает максимальный уровень масштаба, при котором заданные границы полностью помещаются в вид карты. Если inside (необязательный параметр) установлен в true, метод вместо этого возвращает минимальный уровень масштаба, при котором вид карты полностью помещается в заданные границы.

getSize() Point

Возвращает текущий размер контейнера карты (в пикселях).

getPixelBounds() Bounds

Возвращает границы текущего вида карты в проекции пиксельных координат (иногда полезно при реализации слоёв и наложений).

getPixelOrigin() Point

Возвращает проекцию пиксельных координат левой верхней точки слоя карты (полезно при реализации пользовательских слоёв и наложений).

getPixelWorldBounds(<Number> zoom?) Bounds

Возвращает границы мира в пиксельных координатах для уровня масштаба zoom. Если zoom опущен, используется текущий уровень масштаба карты.

Методы преобразования

Метод Возвращает Описание
getZoomScale(<Number> toZoom, <Number> fromZoom) Number

Возвращает коэффициент масштабирования, применяемый к переходу карты с уровня масштабирования fromZoom на toZoom. Используется во внутренних целях для анимации масштабирования.

getScaleZoom(<Number> scale, <Number> fromZoom) Number

Возвращает уровень масштабирования, до которого карта достигнет, если она находится на уровне fromZoom, а все масштабируется на коэффициент scale. Обратная функция getZoomScale.

project(<LatLng> latlng, <Number> zoom) Point

Проецирует географическую координату LatLng согласно проекции CRS карты, затем масштабирует ее в соответствии с zoom и Transformation CRS. Результат — координата пикселя, относительная к началу CRS.

unproject(<Point> point, <Number> zoom) LatLng

Обратная функция project.

layerPointToLatLng(<Point> point) LatLng

При заданной координате пикселя, относительной к исходному пикселю, возвращает соответствующую географическую координату (для текущего уровня масштабирования).

latLngToLayerPoint(<LatLng> latlng) Point

При заданной географической координате возвращает соответствующую координату пикселя, относительную к исходному пикселю.

wrapLatLng(<LatLng> latlng) LatLng

Возвращает LatLng, где lat и lng были обернуты согласно свойствам wrapLat и wrapLng CRS карты, если они находятся за пределами границ CRS. По умолчанию это означает, что долгота обернута вокруг меридиана, так что ее значение находится в диапазоне от -180 до +180 градусов.

wrapLatLngBounds(<LatLngBounds> bounds) LatLngBounds

Возвращает LatLngBounds с тем же размером, что и заданный, гарантируя, что его центр находится в пределах границ CRS. По умолчанию это означает, что центральная долгота обернута вокруг меридиана, так что ее значение находится в диапазоне от -180 до +180 градусов, и большая часть границ перекрывает границы CRS.

distance(<LatLng> latlng1, <LatLng> latlng2) Number

Возвращает расстояние между двумя географическими координатами согласно CRS карты. По умолчанию это расстояние измеряется в метрах.

containerPointToLayerPoint(<Point> point) Point

При заданной координате пикселя, относительной к контейнеру карты, возвращает соответствующую координату пикселя, относительную к исходному пикселю.

layerPointToContainerPoint(<Point> point) Point

При заданной координате пикселя, относительной к исходному пикселю, возвращает соответствующую координату пикселя, относительную к контейнеру карты.

containerPointToLatLng(<Point> point) LatLng

При заданной координате пикселя, относительной к контейнеру карты, возвращает соответствующую географическую координату (для текущего уровня масштабирования).

latLngToContainerPoint(<LatLng> latlng) Point

При заданной географической координате возвращает соответствующую координату пикселя, относительную к контейнеру карты.

mouseEventToContainerPoint(<MouseEvent> ev) Point

При заданном объекте MouseEvent возвращает координату пикселя, относительную к контейнеру карты, где произошло событие.

mouseEventToLayerPoint(<MouseEvent> ev) Point

При заданном объекте MouseEvent возвращает координату пикселя, относительную к исходному пикселю, где произошло событие.

mouseEventToLatLng(<MouseEvent> ev) LatLng

При заданном объекте MouseEvent возвращает географические координаты, где произошло событие.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-слушатель (fn) к определённому типу события объекта. Можно указать контекст слушателя (объект, на который будет указывать this). Также можно передать несколько типов, разделённых пробелом (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар "тип/слушатель", например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-слушатель. Если функция не указана, удаляются все слушатели этого события. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off, чтобы удалить слушателя.

off(<Object> eventMap) this

Удаляет набор пар "тип/слушатель".

off() this

Удаляет всех слушателей всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Срабатывает событие указанного типа. Можно необязательно указать объект данных — свойства этого объекта будут первым аргументом функции-слушателя. Событие может быть необязательно передано родительским элементам.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события есть подключенные слушатели.

once(…) this

Ведёт себя как on(…), за исключением того, что слушатель будет вызван один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительский обработчик событий — Evented, который будет получать передаваемые события.

removeEventParent(<Evented> obj) this

Удаляет родительский обработчик событий, чтобы он перестал получать передаваемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Свойства

Обработчики

Свойство Тип Описание
boxZoom Handler Box (shift-drag with mouse) zoom handler.
doubleClickZoom Handler Double click zoom handler.
dragging Handler Map dragging handler (by both mouse and touch).
keyboard Handler Keyboard navigation handler.
scrollWheelZoom Handler Scroll wheel zoom handler.
tap Handler Mobile touch hacks (quick tap and touch hold) handler.
touchZoom Handler Touch zoom handler.

Слои карты

Слои — это DOM-элементы, используемые для управления порядком слоёв на карте. Доступ к слоям можно получить с помощью методов map.getPane или map.getPanes. Новые слои можно создать с помощью метода map.createPane. У каждой карты есть следующие стандартные слои, которые отличаются только значением zIndex.
Слой Тип Z-индекс Описание
mapPane HTMLElement 'auto' Слой, содержащий все остальные слои карты
tilePane HTMLElement 200 Слой для GridLayer и TileLayer
overlayPane HTMLElement 400 Слой для векторных наложений (Path), таких как Polyline и Polygon
shadowPane HTMLElement 500 Слой для теней наложений (например, тени Marker)
markerPane HTMLElement 600 Слой для Icon маркеров Marker
tooltipPane HTMLElement 650 Слой для всплывающих подсказок.
popupPane HTMLElement 700 Слой для Popup.

Параметры поиска местоположения

Некоторые из методов геолокации для Map принимают параметр options. Это обычный объект JavaScript с необязательными компонентами:
Опция Тип По умолчанию Описание
watch Boolean false Если true, запускает непрерывное отслеживание изменений местоположения (вместо однократного определения) с помощью метода W3C watchPosition. Позже вы можете прекратить отслеживание, используя метод map.stopLocate().
setView Boolean false Если true, автоматически устанавливает отображение карты на местоположение пользователя с учетом точности определения или на глобальный вид, если геолокация не удалась.
maxZoom Number Infinity Максимальный масштаб для автоматической установки отображения при использовании опции setView.
timeout Number 10000 Количество миллисекунд ожидания ответа от геолокации перед срабатыванием события locationerror.
maximumAge Number 0 Максимальный возраст определенного местоположения. Если с момента последнего ответа геолокации прошло меньше этого количества миллисекунд, locate вернет кэшированное местоположение.
enableHighAccuracy Boolean false Включает высокую точность, см. описание в спецификации W3C.

Опции масштаба

Некоторые методы Map, изменяющие уровень масштаба, принимают параметр options. Это обычный объект JavaScript с необязательными компонентами:
Опция Тип По умолчанию Описание
animate Boolean Если не указано, анимация масштабирования будет происходить, если точка масштабирования находится внутри текущего вида. Если true, карта попытается анимировать масштабирование, независимо от того, где находится точка масштабирования. Установка false заставит всегда полностью переустановить отображение без анимации.

Опции перемещения

Некоторые из методов Map, которые изменяют центр карты, принимают параметр options. Это обычный объект JavaScript с необязательными компонентами:
Опция Тип По умолчанию Описание
animate Boolean Если true, перемещение всегда будет анимироваться, если возможно. Если false, анимация перемещения не будет происходить, либо карта будет полностью переустановлена при перемещении более чем на один экран, либо будет установлен новый смещение для области карты (за исключением panBy, который всегда делает последнее).
duration Number 0.25 Продолжительность анимированного перемещения в секундах.
easeLinearity Number 0.25 Коэффициент кривизны смягчения анимации перемещения (третий параметр кривой Безье). 1.0 означает линейную анимацию, а чем меньше это число, тем более изогнутой является кривая.
noMoveStart Boolean false Если true, событие movestart не будет вызываться при начале перемещения (используется внутри для инерции перемещения).

Опции масштаба/перемещения

Опция Тип По умолчанию Описание
animate Boolean Если не указано, анимация масштабирования будет происходить, если точка масштабирования находится внутри текущего вида. Если true, карта попытается анимировать масштабирование, независимо от того, где находится точка масштабирования. Установка false заставит всегда полностью переустановить отображение без анимации.
Опция Тип По умолчанию Описание
duration Number 0.25 Продолжительность анимированного перемещения в секундах.
easeLinearity Number 0.25 Коэффициент кривизны смягчения анимации перемещения (третий параметр кривой Безье). 1.0 означает линейную анимацию, а чем меньше это число, тем более изогнутой является кривая.
noMoveStart Boolean false Если true, событие movestart не будет вызываться при начале перемещения (используется внутри для инерции перемещения).

Опции FitBounds

Опция Тип По умолчанию Описание
paddingTopLeft Point [0, 0] Устанавливает количество отступа в верхнем левом углу контейнера карты, которое не должно учитываться при установке вида для соответствия границам. Полезно, если на карте есть наложения управления, такие как сайдбар, и вы не хотите, чтобы они скрывали объекты, к которым вы приближаетесь.
paddingBottomRight Point [0, 0] То же самое для нижнего правого угла карты.
padding Point [0, 0] Эквивалентно установке отступа как для верхнего левого, так и для нижнего правого угла.
maxZoom Number null Максимальный возможный масштаб.
Опция Тип По умолчанию Описание
animate Boolean Если не указано, анимация масштабирования будет происходить, если точка масштабирования находится внутри текущего вида. Если true, карта попытается анимировать масштабирование, независимо от того, где находится точка масштабирования. Установка false заставит всегда полностью переустановить отображение без анимации.
Опция Тип По умолчанию Описание
duration Number 0.25 Продолжительность анимированного перемещения в секундах.
easeLinearity Number 0.25 Коэффициент кривизны смягчения анимации перемещения (третий параметр кривой Безье). 1.0 означает линейную анимацию, а чем меньше это число, тем более изогнутой является кривая.
noMoveStart Boolean false Если true, событие movestart не будет вызываться при начале перемещения (используется внутри для инерции перемещения).

Маркер

L.Marker используется для отображения нажаваемых/перетаскиваемых значков на карте. Расширяет Layer.

Пример использования

L.marker([50.5, 30.5]).addTo(map);

Создание

Фабрика Описание
L.marker(<LatLng> latlng, <Marker options> options?) Инициализирует объект Marker, используя географическую точку и необязательный объект опций.

Опции

Опция Тип По умолчанию Описание
icon Icon * Экземпляр значка, используемый для отрисовки метки. Подробности о настройке значка метки см. в документации значка. Если не указано, используется общий экземпляр L.Icon.Default.
draggable Boolean false Можно ли перетаскивать метку с помощью мыши/сенсорного экрана.
keyboard Boolean true Можно ли переходить к метке с помощью клавиатуры и нажимать Enter для ее выбора.
title String '' Текст всплывающей подсказки браузера, отображаемой при наведении указателя мыши на метку (по умолчанию всплывающая подсказка отсутствует).
alt String '' Текст для атрибута alt изображения значка (полезно для доступности).
zIndexOffset Number 0 По умолчанию zIndex изображений меток устанавливается автоматически на основе широты. Используйте этот параметр, если нужно поместить метку поверх всех других (или под ними), задав высокое значение, например 1000 (или высокое отрицательное значение, соответственно).
opacity Number 1.0 Непрозрачность метки.
riseOnHover Boolean false Если true, метка будет располагаться поверх других при наведении на нее курсора.
riseOffset Number 250 Смещение z-индекса, используемое для функции riseOnHover.
pane String 'markerPane' Map pane, куда будет добавлен значок метки.
bubblingMouseEvents Boolean false При true событие мыши на этой метке вызовет то же событие на карте (если не используется L.DomEvent.stopPropagation).
Опция Тип По умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет действовать как часть базовой карты.
Опция Тип По умолчанию Описание
attribution String null Строка, отображаемая в элементе управления подписью; описывает данные слоя, например, «© Mapbox».

События

В дополнение к общим методам слоя, таким как addTo() и remove(), и методам всплывающей подсказки, таким как bindPopup(), вы также можете использовать следующие методы:
Событие Данные Описание
move Event Fired when the marker is moved via setLatLng or by dragging. Old and new coordinates are included in event arguments as oldLatLng, latlng.

События перетаскивания

Событие Данные Описание
dragstart Event Fired when the user starts dragging the marker.
movestart Event Fired when the marker starts moving (because of dragging).
drag Event Fired repeatedly while the user drags the marker.
dragend DragEndEvent Fired when the user stops dragging the marker.
moveend Event Fired when the marker stops moving (because of dragging).
Событие Данные Описание
click MouseEvent Fired when the user clicks (or taps) the layer.
dblclick MouseEvent Fired when the user double-clicks (or double-taps) the layer.
mousedown MouseEvent Fired when the user pushes the mouse button on the layer.
mouseover MouseEvent Fired when the mouse enters the layer.
mouseout MouseEvent Fired when the mouse leaves the layer.
contextmenu MouseEvent Fired when the user right-clicks on the layer, prevents default browser context menu from showing if there are listeners on this event. Also fired on mobile when the user holds a single touch for a second (also called long press).
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
toGeoJSON() Object

Возвращает представление метки в формате GeoJSON (как объект GeoJSON Point Feature).

getLatLng() LatLng

Возвращает текущее географическое положение метки.

setLatLng(<LatLng> latlng) this

Изменяет позицию метки на указанную точку.

setZIndexOffset(<Number> offset) this

Изменяет смещение zIndex метки.

setIcon(<Icon> icon) this

Изменяет значок метки.

setOpacity(<Number> opacity) this

Изменяет непрозрачность метки.

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой к заданной карте или группе слоев.

remove() this

Удаляет слой с карты, на которой он в настоящее время активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий именованный элемент управления на карте. Если name опущено, возвращает элемент управления для этого слоя.

getAttribution() String

Используется элементом управления подписью, возвращает параметр подписи.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Связывает всплывающую подсказку со слоем с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет ранее привязанную всплывающую подсказку с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку в указанной latlng или по умолчанию, если нет latlng.

closePopup() this

Закрывает привязанную всплывающую подсказку, если она открыта.

togglePopup() this

Открывает или закрывает привязанную всплывающую подсказку в зависимости от ее текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, в настоящее время открыта.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getPopup() Popup

Возвращает всплывающую подсказку, привязанную к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или по умолчанию, если нет latlng.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от ее текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в данный момент открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определенному типу события объекта. Вы можете необязательно указать контекст обработчика (объект, к которому будет относиться this). Также можно передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, будут удалены все обработчики этого события для объекта. Обратите внимание, если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Необязательно можно передать объект данных — свойства объекта будут первым аргументом функции-обработчика. Событие необязательно может быть распространено к родительским событиям.

listens(<String> type) Boolean

Возвращает true, если для определенного типа события есть прикрепленные обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз и затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительский обработчик событий — Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родительский обработчик событий, так что он перестанет получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Свойства

Обработчики взаимодействия

Обработчики взаимодействия — свойства экземпляра маркера, позволяющие управлять поведением взаимодействия во время выполнения, включая или отключая определённые функции, такие как перетаскивание (см. Handler методы). Пример:
marker.dragging.disable();
Свойство Тип Описание
dragging Handler Marker dragging handler (by both mouse and touch). Only valid when the marker is on the map (Otherwise set marker.options.draggable).

Попап

Используется для открытия попапов в определённых местах карты. Используйте Map.openPopup для открытия попапов, убеждаясь, что открыт только один попап (рекомендуется для удобства пользователя), или используйте Map.addLayer для открытия любого количества попапов.

Пример использования

Если вы хотите просто привязать попап к клику маркера и затем открыть его, это очень просто:

marker.bindPopup(popupContent).openPopup();

Оверлеи путей, такие как полилинии, также имеют метод bindPopup. Вот более сложный способ открытия попапа на карте:

var popup = L.popup()
    .setLatLng(latlng)
    .setContent('<p>Hello world!<br />This is a nice popup.</p>')
    .openOn(map);

Создание

Фабрика Описание
L.popup(<Popup options> options?, <Layer> source?) Создаёт объект Popup на основе необязательного объекта options, описывающего его внешний вид и расположение, и необязательного объекта source, используемого для маркировки попапа с ссылкой на слой, к которому он относится.

Параметры

Параметр Тип Значение по умолчанию Описание
maxWidth Number 300 Максимальная ширина попапа в пикселях.
minWidth Number 50 Минимальная ширина попапа в пикселях.
maxHeight Number null Если задано, создаёт прокручиваемый контейнер заданной высоты внутри попапа, если его содержимое превышает её.
autoPan Boolean true Установите в false, если не хотите, чтобы карта выполняла анимацию перемещения для подгонки открытого попапа.
autoPanPaddingTopLeft Point null Отступ между попапом и верхним левым углом представления карты после выполнения автоматического перемещения.
autoPanPaddingBottomRight Point null Отступ между попапом и нижним правым углом представления карты после выполнения автоматического перемещения.
autoPanPadding Point Point(5, 5) Эквивалентно установке обоих отступов для автоматического перемещения по верхнему левому и нижнему правому углу к одному значению.
keepInView Boolean false Установите в true, чтобы предотвратить перемещение пользователем попапа за пределы экрана во время его открытия.
closeButton Boolean true Управляет наличием кнопки закрытия в попапе.
autoClose Boolean true Установите в false, чтобы переопределить стандартное поведение закрытия попапа при открытии другого попапа.
closeOnClick Boolean * Установите, если хотите переопределить стандартное поведение закрытия попапа при щелчке пользователем на карте. По умолчанию соответствует параметру closePopupOnClick карты.
className String '' Пользовательское имя CSS-класса для присвоения попапу.
Параметр Тип Значение по умолчанию Описание
offset Point Point(0, 7) Смещение положения попапа. Полезно для управления якорем попапа при его открытии на некоторых оверлеях.
pane String 'popupPane' Map pane, где будет добавлен попап.
Параметр Тип Значение по умолчанию Описание
attribution String null Строка, отображаемая в элементе подписи, описывает данные слоя, например, "© Mapbox".

События

Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
getLatLng() LatLng

Возвращает географическую точку всплывающей подсказки.

setLatLng(<LatLng> latlng) this

Устанавливает географическую точку, где откроется всплывающая подсказка.

getContent() String|HTMLElement

Возвращает содержимое всплывающей подсказки.

setContent(<String|HTMLElement|Function> htmlContent) this

Устанавливает HTML-содержимое всплывающей подсказки. Если передана функция, исходный слой будет передан в функцию. Функция должна вернуть String или HTMLElement, которые будут использованы во всплывающей подсказке.

getElement() String|HTMLElement

Псевдоним для getContent()

update() null

Обновляет содержимое, макет и положение всплывающей подсказки. Полезно для обновления всплывающей подсказки после изменения чего-либо внутри, например, при загрузке изображения.

isOpen() Boolean

Возвращает true, когда всплывающая подсказка отображается на карте.

bringToFront() this

Выводит эту всплывающую подсказку вперёд других всплывающих подсказок (в том же окне карты).

bringToBack() this

Выводит эту всплывающую подсказку назад других всплывающих подсказок (в том же окне карты).

openOn(<Map> map) this

Добавляет всплывающую подсказку на карту и закрывает предыдущую. То же самое, что и map.openPopup(popup).

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой к заданной карте или группе слоев.

remove() this

Удаляет слой с карты, на которой он сейчас активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий указанное имя панели на карте. Если name опущено, возвращает панель для этого слоя.

getAttribution() String

Используется attribution control, возвращает опцию атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающую подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающую подсказку, ранее привязанную с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку в указанной latlng или по умолчанию, если не передан latlng.

closePopup() this

Закрывает всплывающую подсказку, привязанную к этому слою, если она открыта.

togglePopup() this

Открывает или закрывает всплывающую подсказку, привязанную к этому слою, в зависимости от ее текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, в настоящее время открыта.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getPopup() Popup

Возвращает всплывающую подсказку, привязанную к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает всплывающую подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет всплывающую подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку в указанной latlng или по умолчанию, если не передан latlng.

closeTooltip() this

Закрывает всплывающую подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает всплывающую подсказку, привязанную к этому слою, в зависимости от ее текущего состояния.

isTooltipOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает всплывающую подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-слушатель (fn) для определённого типа события объекта. Можно указать контекст слушателя (объект, к которому будет относиться ключевое слово this). Также можно передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/слушатель, например {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-слушатель. Если функция не указана, удаляются все слушатели данного события для объекта. Обратите внимание, что если для on был указан контекст, необходимо передать тот же контекст для off, чтобы удалить слушателя.

off(<Object> eventMap) this

Удаляет набор пар тип/слушатель.

off() this

Удаляет всех слушателей всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Можно дополнительно передать объект данных — свойства этого объекта будут доступны в качестве первого аргумента функции-слушателя. Событие может быть распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определенного типа события есть привязанные слушатели.

once(…) this

Поведение аналогично on(…), за исключением того, что слушатель будет вызван один раз и затем удалён.

addEventParent(<Evented> obj) this

Добавляет родителя события — Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родителя события, так что он больше не будет получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Подсказка

Используется для отображения небольших текстовых подсказок поверх слоев карты.

Пример использования

marker.bindTooltip("my tooltip text").openTooltip();

Примечание об отступе подсказки. Leaflet учитывает два параметра для вычисления отступа подсказки:

  • параметр offset подсказки: по умолчанию [0, 0], специфичен для одной подсказки. Положительный x-сдвиг смещает подсказку вправо, положительный y-сдвиг — вниз. Отрицательные значения — влево и вверх.
  • параметр tooltipAnchor значка: учитывается только для маркеров. Вам следует адаптировать это значение, если используется настраиваемый значок.

Создание

Фабрика Описание
L.tooltip(<Tooltip options> options?, <Layer> source?) Создаёт объект Tooltip с необязательным объектом options, описывающим внешний вид и расположение, и необязательным объектом source, используемым для привязки подсказки к слою.

Параметры

Параметр Тип Значение по умолчанию Описание
pane String 'tooltipPane' Map pane, где будет добавлена подсказка.
offset Point Point(0, 0) Необязательный отступ позиции подсказки.
direction String 'auto' Направление открытия подсказки. Возможные значения: right, left, top, bottom, center, auto. auto динамически переключается между right и left в зависимости от положения подсказки на карте.
permanent Boolean false Открывать подсказку постоянно или только при наведении.
sticky Boolean false Если true, подсказка будет следовать за курсором мыши, а не фиксироваться на центре объекта.
interactive Boolean false Если true, подсказка будет реагировать на события объекта.
opacity Number 0.9 Прозрачность контейнера подсказки.
Параметр Тип Значение по умолчанию Описание
className String '' Пользовательское имя класса CSS для всплывающей подсказки.
Параметр Тип Значение по умолчанию Описание
attribution String null Строка, отображаемая в контроле атрибутов, описывающая данные слоя, например "© Mapbox".

События

Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на данную карту или группу слоёв.

remove() this

Удаляет слой с карты, на которой он сейчас активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий именованный слой на карте. Если name опущен, возвращается слой для этого слоя.

getAttribution() String

Используется элементом attribution control, возвращает параметр атрибута.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Связывает всплывающее окно с слоем с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее связанное с bindPopup.

openPopup(<LatLng> latlng?) this

Открывает связанное всплывающее окно в указанной latlng или по умолчанию в якорной точке всплывающего окна, если не передан latlng.

closePopup() this

Закрывает всплывающее окно, связанное с этим слоем, если оно открыто.

togglePopup() this

Открывает или закрывает всплывающее окно, связанное с этим слоем, в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающее окно, связанное с этим слоем, в настоящее время открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, связанного с этим слоем.

getPopup() Popup

Возвращает всплывающее окно, связанное с этим слоем.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Связывает подсказку со слоем с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее связанную с bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает связанную подсказку в указанной latlng или по умолчанию в якорной точке подсказки, если не передан latlng.

closeTooltip() this

Закрывает подсказку, связанную с этим слоем, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, связанную с этим слоем, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, связанная с этим слоем, в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, связанной с этим слоем.

getTooltip() Tooltip

Возвращает подсказку, связанную с этим слоем.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определённому типу события объекта. Вы можете необязательно указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Также можно передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, удаляет всех обработчиков этого определённого события из объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off для удаления обработчика.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно предоставить объект данных — первый аргумент функции-обработчика будет содержать его свойства. Событие необязательно может быть распространено на родительские элементы событий.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события есть прикреплённые обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительский элемент события — Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родительский элемент события, чтобы он перестал получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

TileLayer

Используется для загрузки и отображения слоёв тайлов на карте. Расширяет GridLayer.

Пример использования

L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png?{foo}', {foo: 'bar'}).addTo(map);

Шаблон URL

Строка следующего формата:

'http://{s}.somedomain.com/blabla/{z}/{x}/{y}{r}.png'

{s} обозначает один из доступных доменных суффиксов (используется последовательно для поддержки параллельных запросов браузера, ограниченных по домену; значения поддоменов указаны в опциях; a, b или c по умолчанию, могут быть опущены), {z} — уровень масштаба, {x} и {y} — координаты тайла. {r} может быть использовано для добавления "&commat;2x" в URL для загрузки тайлов с высоким разрешением. Вы можете использовать пользовательские ключи в шаблоне, которые будут оцениваться по опциям TileLayer, например:

L.tileLayer('http://{s}.somedomain.com/{foo}/{z}/{x}/{y}.png', {foo: 'bar'});

Создание

Расширяемые методы

Фабрика Описание
L.tilelayer(<String> urlTemplate, <TileLayer options> options?) Инициализирует объект слоя тайлов, заданного URL template и необязательно объектом опций.

Опции

Параметр Тип По умолчанию Описание
minZoom Number 0 Минимальный уровень масштабирования, до которого будет отображаться этот слой (включительно).
maxZoom Number 18 Максимальный уровень масштабирования, до которого будет отображаться этот слой (включительно).
subdomains String|String[] 'abc' Поддомены службы тайлов. Можно передать в виде одной строки (где каждый символ — имя поддомена) или массива строк.
errorTileUrl String '' URL изображения тайла, которое будет отображаться вместо тайла, не загруженного по ошибке.
zoomOffset Number 0 Число масштабирования, используемое в URL тайлов, будет смещено на это значение.
tms Boolean false Если true, инвертирует нумерацию оси Y для тайлов (включите для сервисов TMS).
zoomReverse Boolean false Если установлено в true, число масштабирования, используемое в URL тайлов, будет инвертировано (maxZoom - zoom вместо zoom)
detectRetina Boolean false Если true и пользователь находится на экране с технологией Retina, запрашиваются четыре тайла половинного размера и с большим уровнем масштабирования вместо одного, чтобы использовать высокое разрешение.
crossOrigin Boolean false Если true, для всех тайлов будет установлено свойство crossOrigin в ''. Это необходимо, если вы хотите получить доступ к данным пикселей тайла.
Параметр Тип По умолчанию Описание
tileSize Number|Point 256 Ширина и высота тайлов в сетке. Используйте число, если ширина и высота равны, или L.point(width, height) в противном случае.
opacity Number 1.0 Непрозрачность тайлов. Может быть использована в функции createTile().
updateWhenIdle Boolean (depends) Загрузка новых тайлов только по окончании перемещения. true по умолчанию в мобильных браузерах, чтобы избежать слишком большого количества запросов и сохранить плавную навигацию. false в противном случае, чтобы отображать новые тайлы во время перемещения, поскольку легко выйти за пределы параметра keepBuffer в браузерах на настольных компьютерах.
updateWhenZooming Boolean true По умолчанию плавная анимация масштабирования (во время масштабирования с помощью сенсорного экрана или flyTo()) обновляет слои сетки каждый целое значение масштабирования. Установка этого параметра в false обновит слой сетки только по завершении плавной анимации.
updateInterval Number 200 Обновление тайлов будет происходить не чаще чем раз каждые updateInterval миллисекунд при перемещении.
zIndex Number 1 Явное значение zIndex слоя тайлов.
bounds LatLngBounds undefined При установке тайлы будут загружаться только внутри заданных LatLngBounds.
maxNativeZoom Number undefined Максимальное значение масштабирования, доступное для источника тайлов. Если задано, тайлы на всех уровнях масштабирования выше maxNativeZoom будут загружаться с уровня maxNativeZoom и масштабироваться автоматически.
minNativeZoom Number undefined Минимальное значение масштабирования, доступное для источника тайлов. Если задано, тайлы на всех уровнях масштабирования ниже minNativeZoom будут загружаться с уровня minNativeZoom и масштабироваться автоматически.
noWrap Boolean false Определяет, обрезается ли слой по антимеридиану. Если true, GridLayer будет отображаться только один раз при низких уровнях масштабирования. Не имеет эффекта, если система координат карты не обрезает по антимеридиану. Может использоваться в сочетании с bounds, чтобы предотвратить запрос тайлов за пределами границ системы координат.
pane String 'tilePane' Map pane, куда будет добавлен слой сетки.
className String '' Пользовательское имя класса для назначения слою тайлов. По умолчанию пусто.
keepBuffer Number 2 При перемещении карты сохраняется это количество строк и столбцов тайлов, прежде чем их загружать.
Параметр Тип По умолчанию Описание
attribution String null Строка, отображаемая в элементе управления атрибуции, описывает данные слоя, например, "© Mapbox".

События

Событие Данные Описание
loading Event Fired when the grid layer starts loading tiles.
tileunload TileEvent Fired when a tile is removed (e.g. when a tile goes off the screen).
tileloadstart TileEvent Fired when a tile is requested and starts loading.
tileerror TileErrorEvent Fired when there is an error loading a tile.
tileload TileEvent Fired when a tile loads.
load Event Fired when the grid layer loaded all visible tiles.
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращаемое значение Описание
setUrl(<String> url, <Boolean> noRedraw?) this

Обновляет шаблон URL слоя и перерисовывает его (если noRedraw не установлено в true).

createTile(<Object> coords, <Function> done?) HTMLElement

Вызывается только внутренне, переопределяет createTile() GridLayer, чтобы вернуть элемент HTML <img> с соответствующим URL изображения, заданным coords. Обратный вызов done вызывается, когда тайл загружен.

Расширенные методы

Слои, расширяющие TileLayer, могут повторно реализовать следующий метод.
Метод Возвращаемое значение Описание
getTileUrl(<Object> coords) String

Вызывается только внутренне, возвращает URL для тайла, учитывая его координаты. Классы, расширяющие TileLayer, могут переопределить эту функцию, чтобы предоставить пользовательские схемы именования URL тайлов.

Метод Возвращает Описание
bringToFront() this

Переводит слой тайлов наверх всех слоёв тайлов.

bringToBack() this

Переводит слой тайлов вниз к основанию всех слоёв тайлов.

getContainer() HTMLElement

Возвращает HTML-элемент, содержащий тайлы для данного слоя.

setOpacity(<Number> opacity) this

Изменяет непрозрачность (прозрачность) слоя сетки.

setZIndex(<Number> zIndex) this

Изменяет zIndex слоя сетки.

isLoading() Boolean

Возвращает true, если какой-либо тайл в слое сетки ещё не загружен.

redraw() this

Принудительно очищает все тайлы слоя и запрашивает их повторно.

getTileSize() Point

Нормализует параметр tileSize в точку. Используется методом createTile().

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на заданную карту или группу слоёв.

remove() this

Удаляет слой с карты, на которой он сейчас активен.

removeFrom(<Map> map) this

Удаляет слой со заданной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий заданный плейн на карте. Если name опущено, возвращает плейн для этого слоя.

getAttribution() String

Используется методом attribution control, возвращает параметр attribution.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающее окно к слою с переданным content и настраивает необходимые обработчики событий. Если передаётся Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет привязанное всплывающее окно с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанное всплывающее окно в указанной latlng или по умолчанию, если latlng не передано.

closePopup() this

Закрывает всплывающее окно, привязанное к этому слою, если оно открыто.

togglePopup() this

Открывает или закрывает всплывающее окно, привязанное к этому слою, в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающее окно, привязанное к этому слою, открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, привязанного к этому слою.

getPopup() Popup

Возвращает всплывающее окно, привязанное к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передаётся Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет привязанную подсказку с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или по умолчанию, если latlng не передано.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет обработчик событий (fn) к определённому типу событий объекта. Вы можете указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Также можно передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленный обработчик событий. Если функция не указана, удаляются все обработчики событий для данного типа события. Обратите внимание, что если вы передали контекст в on, вам необходимо передать тот же контекст в off для удаления обработчика.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно предоставить объект данных — свойства которого будут первым аргументом функции обработчика. Событие необязательно может быть распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события прикреплены какие-либо обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительский обработчик событий - Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родительский обработчик событий, чтобы он перестал получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

TileLayer.WMS

Используется для отображения сервисов WMS в качестве слоёв тайлов на карте. Расширяет TileLayer.

Пример использования

var nexrad = L.tileLayer.wms("http://mesonet.agron.iastate.edu/cgi-bin/wms/nexrad/n0r.cgi", {
    layers: 'nexrad-n0r-900913',
    format: 'image/png',
    transparent: true,
    attribution: "Weather data © 2012 IEM Nexrad"
});

Создание

Фабрика Описание
L.tileLayer.wms(<String> baseUrl, <TileLayer.WMS options> options) Создаёт объект слоя тайлов WMS, используя базовый URL сервиса WMS и объект параметров/опций WMS.

Параметры

Если используются какие-либо пользовательские параметры, не документированные здесь, они будут отправлены на сервер WMS в качестве дополнительных параметров в каждом запросе URL. Это может быть полезно для параметров WMS сторонних поставщиков.
Параметр Тип По умолчанию Описание
layers String '' (обязательно) Список слоёв WMS, разделенных запятыми, для отображения.
styles String '' Список стилей WMS, разделенных запятыми.
format String 'image/jpeg' Формат изображения WMS (используйте 'image/png' для слоёв с прозрачностью).
transparent Boolean false Если true, служба WMS вернёт изображения с прозрачностью.
version String '1.1.1' Версия службы WMS, которую нужно использовать
crs CRS null Система координат, которую следует использовать для запросов WMS, по умолчанию совпадает с системой координат карты. Не изменяйте это, если не уверены, что это означает.
uppercase Boolean false Если true, ключи параметров запроса WMS будут в верхнем регистре.
Параметр Тип По умолчанию Описание
minZoom Number 0 Минимальный уровень масштабирования, до которого будет отображаться этот слой (включительно).
maxZoom Number 18 Максимальный уровень масштабирования, до которого будет отображаться этот слой (включительно).
subdomains String|String[] 'abc' Поддомены службы плиток. Могут быть переданы в виде одной строки (где каждая буква — имя поддомена) или массива строк.
errorTileUrl String '' URL изображения плитки, которое следует отобразить вместо не загруженной плитки.
zoomOffset Number 0 Номер масштабирования, используемый в URL-адресах плиток, будет сдвинут на это значение.
tms Boolean false Если true, инвертирует нумерацию оси Y для плиток (включите для сервисов TMS).
zoomReverse Boolean false Если установлено в true, номер масштабирования, используемый в URL-адресах плиток, будет инвертирован (maxZoom - zoom вместо zoom)
detectRetina Boolean false Если true и пользователь находится на экране с технологией Retina, он запросит четыре плитки с половиной указанного размера и большим уровнем масштабирования вместо одной, чтобы использовать высокое разрешение.
crossOrigin Boolean false Если true, все плитки будут иметь свой атрибут crossOrigin, установленный в ''. Это необходимо, если вы хотите получить доступ к данным пикселей плитки.
Параметр Тип По умолчанию Описание
tileSize Number|Point 256 Ширина и высота плиток в сетке. Используйте число, если ширина и высота равны, или L.point(width, height) в противном случае.
opacity Number 1.0 Непрозрачность плиток. Может быть использована в функции createTile().
updateWhenIdle Boolean (depends) Загружать новые плитки только после завершения перемещения. По умолчанию включено в мобильных браузерах, чтобы избежать большого количества запросов и сохранить плавность навигации. false в противном случае, чтобы отобразить новые плитки во время перемещения, поскольку легко переместиться за пределы параметра keepBuffer в настольных браузерах.
updateWhenZooming Boolean true По умолчанию, плавная анимация масштабирования (во время масштабирования нажатием или flyTo()) будет обновлять слои сетки каждые целые значения масштабирования. Установка этого параметра в false обновит слой сетки только по завершении плавной анимации.
updateInterval Number 200 Плитки не будут обновляться чаще, чем один раз каждые updateInterval миллисекунд при перемещении.
zIndex Number 1 Явный z-индекс слоя плиток.
bounds LatLngBounds undefined Если задано, плитки будут загружаться только внутри заданных LatLngBounds.
maxNativeZoom Number undefined Максимальное значение масштабирования, доступное для источника плиток. Если оно указано, плитки на всех уровнях масштабирования выше maxNativeZoom будут загружаться с уровня maxNativeZoom и автоматически масштабироваться.
minNativeZoom Number undefined Минимальное значение масштабирования, доступное для источника плиток. Если оно указано, плитки на всех уровнях масштабирования ниже minNativeZoom будут загружаться с уровня minNativeZoom и автоматически масштабироваться.
noWrap Boolean false Определяет, обернут ли слой вокруг антимеридиана. Если true, GridLayer будет отображаться только один раз на низких уровнях масштабирования. Не оказывает влияния, когда система координат карты не обернута. Может использоваться в сочетании с bounds для предотвращения запросов плиток за пределами ограничений системы координат.
pane String 'tilePane' Map pane, куда будет добавлен слой сетки.
className String '' Пользовательское имя класса для назначения слою плиток. По умолчанию пустое.
keepBuffer Number 2 При перемещении карты сохраняйте это количество строк и столбцов плиток перед их разгрузкой.
Параметр Тип По умолчанию Описание
attribution String null Строка, отображаемая в элементе управления атрибутами, описывающая данные слоя, например, "© Mapbox".

События

Событие Данные Описание
loading Event Fired when the grid layer starts loading tiles.
tileunload TileEvent Fired when a tile is removed (e.g. when a tile goes off the screen).
tileloadstart TileEvent Fired when a tile is requested and starts loading.
tileerror TileErrorEvent Fired when there is an error loading a tile.
tileload TileEvent Fired when a tile loads.
load Event Fired when the grid layer loaded all visible tiles.
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращаемое значение Описание
setParams(<Object> params, <Boolean> noRedraw?) this

Объединяет объект с новыми параметрами и повторно запрашивает тайлы на текущем экране (если noRedraw не установлено в true).

Метод Возвращает Описание
setUrl(<String> url, <Boolean> noRedraw?) this

Обновляет шаблон URL слоя и перерисовывает его (если noRedraw не установлено в значение true).

createTile(<Object> coords, <Function> done?) HTMLElement

Вызывается только во внутренней среде, переопределяет метод createTile() GridLayer, чтобы вернуть элемент HTML <img> с соответствующим URL изображения, заданным coords. Обратный вызов done вызывается после загрузки тайла.

Метод Возвращает Описание
bringToFront() this

Выводит слой тайлов поверх всех других слоев тайлов.

bringToBack() this

Выводит слой тайлов под все остальные слои тайлов.

getContainer() HTMLElement

Возвращает элемент HTML, содержащий тайлы для данного слоя.

setOpacity(<Number> opacity) this

Изменяет значение прозрачности слоя тайлов.

setZIndex(<Number> zIndex) this

Изменяет значение zIndex слоя тайлов.

isLoading() Boolean

Возвращает true, если какой-либо тайл в слое тайлов еще не загружен.

redraw() this

Принудительно очищает все тайлы и запрашивает их повторно.

getTileSize() Point

Нормализует значение параметра tileSize в точку. Используется методом createTile().

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на заданную карту или группу слоев.

remove() this

Удаляет слой с карты, на которой он в данный момент активен.

removeFrom(<Map> map) this

Удаляет слой с указанной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий собой указанную область на карте. Если name опущено, возвращает область для данного слоя.

getAttribution() String

Используется методом attribution control, возвращает значение параметра attribution.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающую подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающую подсказку, ранее привязанную с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку в указанной latlng или по умолчанию, если latlng не указан.

closePopup() this

Закрывает всплывающую подсказку, привязанную к этому слою, если она открыта.

togglePopup() this

Открывает или закрывает всплывающую подсказку, привязанную к этому слою, в зависимости от ее текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, в данный момент открыта.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getPopup() Popup

Возвращает всплывающую подсказку, привязанную к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или по умолчанию, если latlng не указан.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от ее текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в данный момент открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-слушатель (fn) к определенному типу события объекта. Вы можете необязательно указать контекст слушателя (объект, к которому будет относиться ключевое слово this). Вы также можете передать несколько типов, разделенных пробелами (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/слушатель, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-слушатель. Если функция не указана, она удалит всех слушателей этого определенного события от объекта. Обратите внимание, что если вы передали пользовательский контекст для on, вы должны передать тот же контекст для off, чтобы удалить слушателя.

off(<Object> eventMap) this

Удаляет набор пар тип/слушатель.

off() this

Удаляет всех слушателей всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно предоставить объект данных — первый аргумент функции-слушателя будет содержать его свойства. Событие может быть необязательно распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определенного типа события есть какие-либо прикрепленные слушатели.

once(…) this

Ведёт себя как on(…), за исключением того, что слушатель будет вызван только один раз, а затем удален.

addEventParent(<Evented> obj) this

Добавляет родительское событие — Evented, которое будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительское событие, так что оно перестанет получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

ImageOverlay

Используется для загрузки и отображения одного изображения над определёнными границами карты. Расширяет Layer.

Пример использования

var imageUrl = 'http://www.lib.utexas.edu/maps/historical/newark_nj_1922.jpg',
    imageBounds = [[40.712216, -74.22655], [40.773941, -74.12544]];
L.imageOverlay(imageUrl, imageBounds).addTo(map);

Создание

Фабрика Описание
L.imageOverlay(<String> imageUrl, <LatLngBounds> bounds, <ImageOverlay options> options?) Создаёт объект наложения изображения, заданного URL-адресом изображения и связанными с ним географическими границами.

Параметры

Параметр Тип Значение по умолчанию Описание
opacity Number 1.0 Прозрачность наложения изображения.
alt String '' Текст для атрибута alt изображения (полезно для доступности).
interactive Boolean false Если true, наложение изображения будет генерировать события мыши при нажатии или наведении курсора.
crossOrigin Boolean false Если true, у изображения будет установлен атрибут crossOrigin со значением ''. Это необходимо, если вы хотите получить доступ к данным пикселей изображения.
errorOverlayUrl String '' URL на изображение наложения для отображения вместо наложения, которое не удалось загрузить.
zIndex Number 1 Явное значение zIndex слоя плитки.
className String '' Пользовательское имя класса для назначения изображению. По умолчанию пустое.
Параметр Тип Значение по умолчанию Описание
bubblingMouseEvents Boolean true Если true, событие мыши на этом слое вызовет то же событие на карте (если не используется L.DomEvent.stopPropagation).
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен к панели наложения карты. Переопределение этого параметра приведет к размещению слоя на другой панели по умолчанию.
attribution String null Строка, которая будет отображаться в элементе управления атрибуцией, описывает данные слоя, например, «© Mapbox».

События

Событие Данные Описание
load Event Fired when the ImageOverlay layer has loaded its image
error Event Fired when the ImageOverlay layer has loaded its image
Событие Данные Описание
click MouseEvent Fired when the user clicks (or taps) the layer.
dblclick MouseEvent Fired when the user double-clicks (or double-taps) the layer.
mousedown MouseEvent Fired when the user pushes the mouse button on the layer.
mouseover MouseEvent Fired when the mouse enters the layer.
mouseout MouseEvent Fired when the mouse leaves the layer.
contextmenu MouseEvent Fired when the user right-clicks on the layer, prevents default browser context menu from showing if there are listeners on this event. Also fired on mobile when the user holds a single touch for a second (also called long press).
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
setOpacity(<Number> opacity) this

Устанавливает непрозрачность наложения.

bringToFront() this

Выводит слой поверх всех наложений.

bringToBack() this

Выводит слой под все наложения.

setUrl(<String> url) this

Изменяет URL изображения.

setBounds(<LatLngBounds> bounds) this

Обновляет границы, которые охватывает ImageOverlay. Изменяет zIndex наложения изображения.

getBounds() LatLngBounds

Получить границы, которые охватывает ImageOverlay

getElement() HTMLElement

Возвращает экземпляр HTMLImageElement, используемый этим наложением.

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на указанную карту или группу слоев.

remove() this

Удаляет слой с карты, на которой он активен.

removeFrom(<Map> map) this

Удаляет слой с указанной карты.

getPane(<String> name?) HTMLElement

Возвращает элемент HTMLElement, представляющий указанный на карте слой. Если параметр name опущен, возвращается слой для этого элемента.

getAttribution() String

Используется attribution control, возвращает параметр атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающее окно к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет ранее привязанное всплывающее окно с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанное всплывающее окно в указанной latlng или по умолчанию, если не указано latlng.

closePopup() this

Закрывает привязанное к слою всплывающее окно, если оно открыто.

togglePopup() this

Открывает или закрывает привязанное к слою всплывающее окно в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающее окно, привязанное к слою, открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, привязанного к этому слою.

getPopup() Popup

Возвращает всплывающее окно, привязанное к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет ранее привязанную подсказку с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или по умолчанию, если не указано latlng.

closeTooltip() this

Закрывает привязанную к слою подсказку, если она открыта.

toggleTooltip() this

Открывает или закрывает привязанную к слою подсказку в зависимости от ее текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к слою, открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определенному типу события объекта. Вы можете указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Вы также можете передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар "тип/обработчик", например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, удаляются все обработчики указанного события от объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар "тип/обработчик".

off() this

Удаляет все обработчики всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете дополнительно передать объект данных — свойства этого объекта будут доступны в качестве первого аргумента функции-обработчика. Событие может быть распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определенного типа события прикреплены обработчики.

once(…) this

Действует как on(…), за исключением того, что обработчик будет вызван один раз, а затем удален.

addEventParent(<Evented> obj) this

Добавляет родительский обработчик событий - Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родительский обработчик событий, чтобы он перестал получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

VideoOverlay

Используется для загрузки и отображения видеоплеера над определёнными границами карты. Расширяет ImageOverlay. Видео-оверлей использует HTML5 элемент <video>.

Пример использования

var videoUrl = 'https://www.mapbox.com/bites/00188/patricia_nasa.webm',
    videoBounds = [[ 32, -130], [ 13, -100]];
L.VideoOverlay(videoUrl, videoBounds ).addTo(map);

Создание

Фабрика Описание
L.videoOverlay(<String|Array|HTMLVideoElement> video, <LatLngBounds> bounds, <VideoOverlay options> options?) Создаёт объект видео-оверлея на основе URL видео (или массива URL, или даже элемента видео) и географических границ, к которым он привязан.

Параметры

Параметр Тип Значение по умолчанию Описание
autoplay Boolean true Начинать воспроизведение автоматически при загрузке.
loop Boolean true Повторять воспроизведение видео с начала при окончании.
Параметр Тип Значение по умолчанию Описание
opacity Number 1.0 Непрозрачность слоя изображения.
alt String '' Текст для атрибута alt изображения (полезно для доступности).
interactive Boolean false Если true, слой изображения будет генерировать события мыши при нажатии или наведении курсора.
crossOrigin Boolean false Если true, у изображения будет установлен атрибут crossOrigin в ''. Это необходимо, если требуется доступ к пиксельным данным изображения.
errorOverlayUrl String '' URL изображения-замены, отображаемого при ошибке загрузки исходного изображения.
zIndex Number 1 Явное значение zIndex слоя плитки.
className String '' Настраиваемое имя класса для изображения. По умолчанию пустое.
Параметр Тип Значение по умолчанию Описание
bubblingMouseEvents Boolean true Если true, событие мыши на этом слое будет также сгенерировано на карте (если не используется L.DomEvent.stopPropagation).
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой добавляется на слой перекрытия карты. Изменение этого параметра разместит слой на другом слое по умолчанию.
attribution String null Строка, отображаемая в контроле атрибутов, описывающая данные слоя, например, "© Mapbox".

События

Событие Данные Описание
load Event Fired when the video has finished loading the first frame
Событие Данные Описание
error Event Fired when the ImageOverlay layer has loaded its image
Событие Данные Описание
click MouseEvent Fired when the user clicks (or taps) the layer.
dblclick MouseEvent Fired when the user double-clicks (or double-taps) the layer.
mousedown MouseEvent Fired when the user pushes the mouse button on the layer.
mouseover MouseEvent Fired when the mouse enters the layer.
mouseout MouseEvent Fired when the mouse leaves the layer.
contextmenu MouseEvent Fired when the user right-clicks on the layer, prevents default browser context menu from showing if there are listeners on this event. Also fired on mobile when the user holds a single touch for a second (also called long press).
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
getElement() HTMLVideoElement

Возвращает экземпляр HTMLVideoElement, используемый этим слоем.

Метод Возвращает Описание
setOpacity(<Number> opacity) this

Устанавливает непрозрачность слоя.

bringToFront() this

Переводит слой наверх всех наложений.

bringToBack() this

Переводит слой вниз под все наложения.

setUrl(<String> url) this

Изменяет URL изображения.

setBounds(<LatLngBounds> bounds) this

Обновляет границы, охватываемые этим ImageOverlay. Изменяет zIndex слоя изображения.

getBounds() LatLngBounds

Возвращает границы, охватываемые этим ImageOverlay.

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на заданную карту или группу слоев.

remove() this

Удаляет слой с карты, на которой он в настоящее время активен.

removeFrom(<Map> map) this

Удаляет слой с указанной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий слой с указанным именем на карте. Если name опущено, возвращает слой для этого слоя.

getAttribution() String

Используется контролем атрибутов, возвращает параметр атрибутов.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающее окно к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет ранее привязанное всплывающее окно с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанное всплывающее окно в указанной latlng или по умолчанию, если latlng не указан.

closePopup() this

Закрывает привязанное всплывающее окно, если оно открыто.

togglePopup() this

Открывает или закрывает привязанное всплывающее окно в зависимости от текущего состояния.

isPopupOpen() boolean

Возвращает true, если привязанное всплывающее окно в данный момент открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое привязанного всплывающего окна.

getPopup() Popup

Возвращает привязанное всплывающее окно.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или в стандартном якоре подсказки, если нет latlng.

closeTooltip() this

Закрывает привязанную к этому слою подсказку, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определённому типу события объекта. Вы можете необязательно указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Вы также можете передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, удаляет все обработчики указанного события от объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off для удаления обработчика.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Срабатывает событие указанного типа. Вы можете необязательно указать объект данных — первый аргумент функции-обработчика будет содержать его свойства. Событие необязательно может быть передано родительским элементам.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события прикреплены какие-либо обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет срабатывать один раз и затем удаляться.

addEventParent(<Evented> obj) this

Добавляет родительский элемент события — Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родительский элемент события, поэтому он перестанет получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Путь

Абстрактный класс, содержащий параметры и константы, общие для векторных наложений (Многоугольник, Полилиния, Окружность). Не используйте его напрямую. Расширяет Layer.

Создание

Фабрика Описание
L.svg(<Renderer options> options?) Создаёт рендерер SVG с заданными параметрами.

Параметры

Параметр Тип По умолчанию Описание
stroke Boolean true Определяет, будет ли рисоваться обводка по пути. Установите в false, чтобы отключить границы на многоугольниках или окружностях.
color String '#3388ff' Цвет обводки
weight Number 3 Ширина обводки в пикселях
opacity Number 1.0 Прозрачность обводки
lineCap String 'round' Строка, определяющая форму, используемую в конце обводки.
lineJoin String 'round' Строка, определяющая форму, используемую в углах обводки.
dashArray String null Строка, определяющая паттерн штриховки обводки. Не работает на слоях, использующих Canvas, в некоторых старых браузерах.
dashOffset String null Строка, определяющая расстояние в паттерн штриховки, с которого начать штрих. Не работает на слоях, использующих Canvas, в некоторых старых браузерах.
fill Boolean depends Определяет, будет ли заполнен путь цветом. Установите в false, чтобы отключить заполнение на многоугольниках или окружностях.
fillColor String * Цвет заливки. По умолчанию совпадает со значением параметра color.
fillOpacity Number 0.2 Непрозрачность заливки.
fillRule String 'evenodd' Строка, определяющая как определяется внутренняя часть фигуры.
bubblingMouseEvents Boolean true Если true, событие мыши на этом пути вызовет то же событие на карте (если не используется L.DomEvent.stopPropagation).
renderer Renderer Используйте этот экземпляр Renderer для этого пути. Имеет приоритет над стандартным рендерером карты.
className String null Пользовательское имя класса, установленное на элементе. Только для рендерера SVG.
Параметр Тип По умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет действовать как часть карты.
Опция Тип По умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на панель наложения карты панель наложения. Переопределение этой опции приведет к размещению слоя на другой панели по умолчанию.
attribution String null Строка, отображаемая в блоке атрибуции, описывающая данные слоя, например, "© Mapbox".

События

Событие Данные Описание
click MouseEvent Fired when the user clicks (or taps) the layer.
dblclick MouseEvent Fired when the user double-clicks (or double-taps) the layer.
mousedown MouseEvent Fired when the user pushes the mouse button on the layer.
mouseover MouseEvent Fired when the mouse enters the layer.
mouseout MouseEvent Fired when the mouse leaves the layer.
contextmenu MouseEvent Fired when the user right-clicks on the layer, prevents default browser context menu from showing if there are listeners on this event. Also fired on mobile when the user holds a single touch for a second (also called long press).
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
redraw() this

Перерисовывает слой. Иногда полезно после изменения координат, используемых маршрутом.

setStyle(<Path options> style) this

Изменяет внешний вид объекта Path на основе опций в объекте Path options.

bringToFront() this

Выводит слой на верхний уровень всех слоев маршрута.

bringToBack() this

Выводит слой на нижний уровень всех слоев маршрута.

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на заданную карту или группу слоев.

remove() this

Удаляет слой с активной карты.

removeFrom(<Map> map) this

Удаляет слой с указанной карты

getPane(<String> name?) HTMLElement

Возвращает объект HTMLElement, представляющий указанную панель на карте. Если name опущена, возвращает панель для этого слоя.

getAttribution() String

Используется блоком атрибуции, возвращает опцию атрибуции attribution control.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Связывает всплывающее окно со слоем с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее привязанное с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанное всплывающее окно в указанной latlng или по умолчанию, если latlng не передан.

closePopup() this

Закрывает всплывающее окно, привязанное к этому слою, если оно открыто.

togglePopup() this

Открывает или закрывает всплывающее окно, привязанное к этому слою, в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающее окно, привязанное к этому слою, открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, привязанного к этому слою.

getPopup() Popup

Возвращает всплывающее окно, привязанное к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Связывает всплывающую подсказку со слоем с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет всплывающую подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку в указанной latlng или по умолчанию, если latlng не передан.

closeTooltip() this

Закрывает всплывающую подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает всплывающую подсказку, привязанную к этому слою, в зависимости от ее текущего состояния.

isTooltipOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает всплывающую подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-слушатель (fn) к определенному типу события объекта. Вы можете необязательно указать контекст слушателя (объект, к которому будет относиться ключевое слово this). Также вы можете передать несколько типов, разделённых пробелом (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар «тип/слушатель», например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-слушатель. Если функция не указана, она удалит всех слушателей этого конкретного события из объекта. Обратите внимание, что если вы передали пользовательский контекст для on, вы должны передать тот же контекст в off, чтобы удалить слушателя.

off(<Object> eventMap) this

Удаляет набор пар «тип/слушатель».

off() this

Удаляет всех слушателей всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно указать объект данных — первый аргумент функции-слушателя будет содержать его свойства. Событие может быть необязательно распространено родительским событиям.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события есть какие-либо прикреплённые слушатели.

once(…) this

Ведёт себя как on(…), за исключением того, что слушатель будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родителя события — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родителя события, поэтому он перестанет получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Полилиния

Класс для отрисовки наложений полилиний на карте. Расширяет Path.

Пример использования

// create a red polyline from an array of LatLng points
var latlngs = [
    [45.51, -122.68],
    [37.77, -122.43],
    [34.04, -118.2]
];
var polyline = L.polyline(latlngs, {color: 'red'}).addTo(map);
// zoom the map to the polyline
map.fitBounds(polyline.getBounds());

Также вы можете передать многомерный массив для представления MultiPolyline фигуры:

// create a red polyline from an array of arrays of LatLng points
var latlngs = [
    [[45.51, -122.68],
     [37.77, -122.43],
     [34.04, -118.2]],
    [[40.78, -73.91],
     [41.83, -87.62],
     [32.76, -96.72]]
];

Создание

Фабрика Описание
L.polyline(<LatLng[]> latlngs, <Polyline options> options?) Создаёт объект полилинии на основе массива географических точек и, необязательно, объекта настроек. Вы можете создать объект Polyline с несколькими отдельными линиями (MultiPolyline), передав массив массивов географических точек.

Настройки

Параметр Тип Значение по умолчанию Описание
smoothFactor Number 1.0 Степень упрощения полилинии на каждом уровне масштабирования. Большее значение означает лучшую производительность и более плавный вид, меньшее — более точное представление.
noClip Boolean false Отключить обрезку полилинии.
Параметр Тип Значение по умолчанию Описание
stroke Boolean true Отрисовывать ли линию вдоль пути. Установите в false, чтобы отключить границы на полигонах или окружностях.
color String '#3388ff' Цвет линии
weight Number 3 Ширина линии в пикселях
opacity Number 1.0 Прозрачность линии
lineCap String 'round' Строка, определяющая форму, используемую в конце линии.
lineJoin String 'round' Строка, определяющая форму, используемую в углах линии.
dashArray String null Строка, определяющая паттерн штрихов линии. Не работает на слоях, основанных на Canvas, в некоторых старых браузерах.
dashOffset String null Строка, определяющая расстояние в паттерне штрихов, с которого начинается штрих. Не работает на слоях, основанных на Canvas, в некоторых старых браузерах.
fill Boolean depends Заливать ли путь цветом. Установите в false, чтобы отключить заливку на полигонах или окружностях.
fillColor String * Цвет заливки. По умолчанию соответствует значению параметра color
fillOpacity Number 0.2 Прозрачность заливки.
fillRule String 'evenodd' Строка, определяющая как определяется внутренняя часть фигуры.
bubblingMouseEvents Boolean true Если true, событие мыши на этом пути вызовет то же самое событие на карте (если не используется L.DomEvent.stopPropagation).
renderer Renderer Используйте этот экземпляр Renderer для этой полилинии. Имеет приоритет над по умолчанию рендерером карты.
className String null Настраиваемое имя класса, заданное на элементе. Только для SVG рендера.
Параметр Тип Значение по умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет действовать как часть базовой карты.
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на слой наложения карты. Переопределение этого параметра приведет к тому, что слой по умолчанию будет размещён на другом слое.
attribution String null Строка, отображаемая в элементе управления атрибутами, описывающая данные слоя, например, «© Mapbox».

События

Событие Данные Описание
click MouseEvent Fired when the user clicks (or taps) the layer.
dblclick MouseEvent Fired when the user double-clicks (or double-taps) the layer.
mousedown MouseEvent Fired when the user pushes the mouse button on the layer.
mouseover MouseEvent Fired when the mouse enters the layer.
mouseout MouseEvent Fired when the mouse leaves the layer.
contextmenu MouseEvent Fired when the user right-clicks on the layer, prevents default browser context menu from showing if there are listeners on this event. Also fired on mobile when the user holds a single touch for a second (also called long press).
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
toGeoJSON() Object

Возвращает представление полилинии в формате GeoJSON (как GeoJSON LineString или MultiLineString Feature).

getLatLngs() LatLng[]

Возвращает массив точек в пути или вложенные массивы точек в случае многолинейности.

setLatLngs(<LatLng[]> latlngs) this

Заменяет все точки в полилинии заданным массивом географических точек.

isEmpty() Boolean

Возвращает true, если у Полилинии нет LatLng.

getCenter() LatLng

Возвращает центр (центр масс) полилинии.

getBounds() LatLngBounds

Возвращает LatLngBounds пути.

addLatLng(<LatLng> latlng) this

Добавляет заданную точку в полилинию. По умолчанию добавляется к первому кольцу полилинии в случае многолинейности, но может быть переопределено путем передачи конкретного кольца в качестве массива LatLng (к которому вы ранее можете получить доступ с помощью getLatLngs).

Метод Возвращает Описание
redraw() this

Перерисовывает слой. Иногда полезно после изменения координат, используемых путем.

setStyle(<Path options> style) this

Изменяет внешний вид Path на основе опций в объекте Path options.

bringToFront() this

Выводит слой поверх всех слоев путей.

bringToBack() this

Выводит слой под все слои путей.

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой к заданной карте или группе слоев.

remove() this

Удаляет слой с карты, на которой он в настоящее время активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий именованный фрагмент на карте. Если name опущено, возвращает фрагмент для данного слоя.

getAttribution() String

Используется attribution control, возвращает опцию атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Связывает всплывающее окно со слоем с переданным content и настраивает необходимые обработчики событий. Если передается Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее привязанное с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает связанное всплывающее окно в указанной latlng или в стандартном якоре всплывающего окна, если latlng не указан.

closePopup() this

Закрывает привязанное к этому слою всплывающее окно, если оно открыто.

togglePopup() this

Открывает или закрывает привязанное к этому слою всплывающее окно в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающее окно, привязанное к этому слою, в настоящее время открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, привязанного к этому слою.

getPopup() Popup

Возвращает всплывающее окно, привязанное к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает всплывающую подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передается Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет всплывающую подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку в указанной latlng или по умолчанию, если latlng не указан.

closeTooltip() this

Закрывает всплывающую подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает всплывающую подсказку, привязанную к этому слою, в зависимости от ее текущего состояния.

isTooltipOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает всплывающую подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-слушатель (fn) к определённому типу события объекта. Вы можете необязательно указать контекст слушателя (объект, к которому будет относиться ключевое слово this). Также вы можете передать несколько типов, разделённых пробелами (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/слушатель, например {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-слушатель. Если функция не указана, удалит всех слушателей данного события из объекта. Обратите внимание, что если вы передали пользовательский контекст для on, вы должны передать тот же контекст для off, чтобы удалить слушателя.

off(<Object> eventMap) this

Удаляет набор пар тип/слушатель.

off() this

Удаляет всех слушателей всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно передать объект данных — первый аргумент функции-слушателя будет содержать его свойства. Событие может быть необязательно распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события есть какие-либо прикрепленные к нему слушатели.

once(…) this

Ведёт себя как on(…), за исключением того, что слушатель будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родителя события — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родителя события, поэтому он перестанет получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Многоугольник

Класс для отрисовки полигональных наложений на карте. Расширяет Polyline. Обратите внимание, что точки, которые вы передаёте при создании многоугольника, не должны иметь дополнительной последней точки, равной первой — лучше отфильтровать такие точки.

Пример использования

// create a red polygon from an array of LatLng points
var latlngs = [[37, -109.05],[41, -109.03],[41, -102.05],[37, -102.04]];
var polygon = L.polygon(latlngs, {color: 'red'}).addTo(map);
// zoom the map to the polygon
map.fitBounds(polygon.getBounds());

Вы также можете передать массив массивов latlng, где первый массив представляет внешнюю форму, а другие массивы представляют собой отверстия во внешней форме:

var latlngs = [
  [[37, -109.05],[41, -109.03],[41, -102.05],[37, -102.04]], // outer ring
  [[37.29, -108.58],[40.71, -108.58],[40.71, -102.50],[37.29, -102.50]] // hole
];

Кроме того, вы можете передать многомерный массив для представления формы Многоугольника.

var latlngs = [
  [ // first polygon
    [[37, -109.05],[41, -109.03],[41, -102.05],[37, -102.04]], // outer ring
    [[37.29, -108.58],[40.71, -108.58],[40.71, -102.50],[37.29, -102.50]] // hole
  ],
  [ // second polygon
    [[41, -111.03],[45, -111.04],[45, -104.05],[41, -104.05]]
  ]
];

Создание

Фабрика Описание
L.polygon(<LatLng[]> latlngs, <Polyline options> options?)

Параметры

Параметр Тип Значение по умолчанию Описание
smoothFactor Number 1.0 Насколько упрощать полилинию на каждом уровне масштабирования. Большее значение означает лучшую производительность и более плавный вид, а меньшее — более точное отображение.
noClip Boolean false Отключить обрезку полилинии.
Параметр Тип Значение по умолчанию Описание
stroke Boolean true Отображать ли контур по пути. Установите в false, чтобы отключить границы на многоугольниках или окружностях.
color String '#3388ff' Цвет контура
weight Number 3 Ширина контура в пикселях
opacity Number 1.0 Прозрачность контура
lineCap String 'round' Строка, определяющая форму, используемую в конце контура.
lineJoin String 'round' Строка, определяющая форму, используемую в углах контура.
dashArray String null Строка, определяющая паттерн штриховки контура. Не работает на слоях, основанных на Canvas в некоторых старых браузерах.
dashOffset String null Строка, определяющая расстояние в шаблоне штриховки для начала штриха. Не работает на слоях, основанных на Canvas в некоторых старых браузерах.
fill Boolean depends Заливать ли путь цветом. Установите в false, чтобы отключить заливки на многоугольниках или окружностях.
fillColor String * Цвет заливки. По умолчанию совпадает со значением параметра color
fillOpacity Number 0.2 Непрозрачность заливки.
fillRule String 'evenodd' Строка, определяющая как определяется внутренняя часть фигуры.
bubblingMouseEvents Boolean true Когда true, событие мыши на этом пути вызовет то же событие на карте (если не используется L.DomEvent.stopPropagation).
renderer Renderer Используйте этот конкретный экземпляр Renderer для этого пути. Имеет приоритет над стандартным рендерером карты.
className String null Пользовательское имя класса, задаваемое элементу. Только для SVG-рендера.
Параметр Тип Значение по умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет действовать как часть базовой карты.
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на слой наложения карты. Переопределение этого параметра приведет к размещению слоя на другом слое по умолчанию.
attribution String null Строка, отображаемая в элементе управления атрибутами, описывающая данные слоя, например, «© Mapbox».

События

Событие Данные Описание
click MouseEvent Fired when the user clicks (or taps) the layer.
dblclick MouseEvent Fired when the user double-clicks (or double-taps) the layer.
mousedown MouseEvent Fired when the user pushes the mouse button on the layer.
mouseover MouseEvent Fired when the mouse enters the layer.
mouseout MouseEvent Fired when the mouse leaves the layer.
contextmenu MouseEvent Fired when the user right-clicks on the layer, prevents default browser context menu from showing if there are listeners on this event. Also fired on mobile when the user holds a single touch for a second (also called long press).
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
toGeoJSON() Object

Возвращает представление многоугольника в формате GeoJSON (как GeoJSON Polygon или MultiPolygon Feature).

Метод Возвращает Описание
getLatLngs() LatLng[]

Возвращает массив точек пути или вложенные массивы точек в случае многократной полилинии.

setLatLngs(<LatLng[]> latlngs) this

Заменяет все точки полилинии заданным массивом географических точек.

isEmpty() Boolean

Возвращает true, если у полилинии нет LatLng.

getCenter() LatLng

Возвращает центр (центроид) полилинии.

getBounds() LatLngBounds

Возвращает LatLngBounds пути.

addLatLng(<LatLng> latlng) this

Добавляет заданную точку в полилинию. По умолчанию добавляет в первый контур полилинии в случае многократной полилинии, но это можно переопределить, передав определенный контур как массив LatLng (к которому вы можете получить доступ с помощью getLatLngs).

Метод Возвращает Описание
redraw() this

Перерисовывает слой. Иногда полезно после изменения координат, которые использует путь.

setStyle(<Path options> style) this

Изменяет внешний вид Path на основе параметров в объекте Path options.

bringToFront() this

Выводит слой поверх всех слоев пути.

bringToBack() this

Выводит слой под все слои пути.

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на заданную карту или группу слоев.

remove() this

Удаляет слой с карты, на которой он сейчас активен.

removeFrom(<Map> map) this

Удаляет слой с указанной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий собой указанный на карте плейн. Если name опущено, возвращается плейн для этого слоя.

getAttribution() String

Используется в attribution control, возвращает параметр атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Связывает всплывающую подсказку со слоем с переданным content и настраивает необходимые обработчики событий. Если передается Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающую подсказку, ранее связанную с bindPopup.

openPopup(<LatLng> latlng?) this

Открывает связанную всплывающую подсказку в указанной latlng или по умолчанию, если latlng не указан.

closePopup() this

Закрывает связанную всплывающую подсказку, если она открыта.

togglePopup() this

Открывает или закрывает всплывающую подсказку, связанную с этим слоем, в зависимости от текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, открыта в данный момент.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getPopup() Popup

Возвращает всплывающую подсказку, связанную с этим слоем.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Связывает подсказку со слоем с переданным content и настраивает необходимые обработчики событий. Если передается Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее связанную с bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает связанную подсказку в указанной latlng или по умолчанию, если latlng не указан.

closeTooltip() this

Закрывает подсказку, связанную с этим слоем, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, связанную с этим слоем, в зависимости от текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, открыта в данный момент.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, связанную с этим слоем.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определенному типу события объекта. Вы можете необязательно указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Вы также можете передать несколько типов, разделенных пробелами (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, она удалит всех обработчиков этого конкретного события от объекта. Обратите внимание, что если вы передали пользовательский контекст для on, вы должны передать тот же контекст для off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет всех обработчиков всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно предоставить объект данных — первый аргумент функции обработчика будет содержать его свойства. Событие может быть необязательно распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определенного типа события есть какие-либо прикрепленные обработчики.

once(…) this

Ведет себя как on(…), за исключением того, что обработчик будет вызван только один раз и затем удален.

addEventParent(<Evented> obj) this

Добавляет родительский обработчик событий — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительский обработчик событий, так что он перестанет получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Прямоугольник

Класс для рисования прямоугольных наложений на карте. Расширяет Polygon.

Пример использования

// define rectangle geographical bounds
var bounds = [[54.559322, -5.767822], [56.1210604, -3.021240]];
// create an orange rectangle
L.rectangle(bounds, {color: "#ff7800", weight: 1}).addTo(map);
// zoom the map to the rectangle bounds
map.fitBounds(bounds);

Создание

Фабрика Описание
L.rectangle(<LatLngBounds> latLngBounds, <Polyline options> options?)

Параметры

Параметр Тип По умолчанию Описание
smoothFactor Number 1.0 Степень упрощения полилинии на каждом уровне масштабирования. Большее значение означает лучшую производительность и более плавную отрисовку, а меньшее — более точное представление.
noClip Boolean false Отключить обрезку полилинии.
Параметр Тип По умолчанию Описание
stroke Boolean true Отображать ли контур вдоль пути. Установите в false, чтобы отключить границы на многоугольниках или окружностях.
color String '#3388ff' Цвет контура
weight Number 3 Ширина контура в пикселях
opacity Number 1.0 Непрозрачность контура
lineCap String 'round' Строка, определяющая форму, используемую в конце контура.
lineJoin String 'round' Строка, определяющая форму, используемую в углах контура.
dashArray String null Строка, определяющая паттерн штриховки контура. Не работает на слоях, основанных на Canvas в некоторых старых браузерах.
dashOffset String null Строка, определяющая расстояние в паттерне штриховки для начала штриха. Не работает на слоях, основанных на Canvas в некоторых старых браузерах.
fill Boolean depends Заполнять ли путь цветом. Установите в false, чтобы отключить заполнение на многоугольниках или окружностях.
fillColor String * Цвет заливки. По умолчанию совпадает со значением параметра color
fillOpacity Number 0.2 Непрозрачность заливки.
fillRule String 'evenodd' Строка, определяющая как определяется внутренняя часть фигуры.
bubblingMouseEvents Boolean true Если true, событие мыши на этом пути вызовет то же событие на карте (если не используется L.DomEvent.stopPropagation).
renderer Renderer Используйте этот экземпляр Renderer для этого пути. Имеет приоритет над по умолчанию рендерером карты.
className String null Пользовательское имя класса, устанавливаемое на элементе. Только для рендера SVG.
Параметр Тип По умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет действовать как часть базовой карты.
Параметр Тип По умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен в слой наложений карты. Изменение этого параметра приведет к тому, что слой будет помещен в другой слой по умолчанию.
attribution String null Строка, отображаемая в блоке атрибутов, описывающая данные слоя, например, "© Mapbox".

События

Событие Данные Описание
click MouseEvent Fired when the user clicks (or taps) the layer.
dblclick MouseEvent Fired when the user double-clicks (or double-taps) the layer.
mousedown MouseEvent Fired when the user pushes the mouse button on the layer.
mouseover MouseEvent Fired when the mouse enters the layer.
mouseout MouseEvent Fired when the mouse leaves the layer.
contextmenu MouseEvent Fired when the user right-clicks on the layer, prevents default browser context menu from showing if there are listeners on this event. Also fired on mobile when the user holds a single touch for a second (also called long press).
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
setBounds(<LatLngBounds> latLngBounds) this

Перерисовывает прямоугольник с заданными границами.

Метод Возвращает Описание
toGeoJSON() Object

Возвращает представление многоугольника в формате GeoJSON (как GeoJSON Polygon или MultiPolygon Feature).

Метод Возвращает Описание
getLatLngs() LatLng[]

Возвращает массив точек пути или вложенные массивы точек в случае много-полилиний.

setLatLngs(<LatLng[]> latlngs) this

Заменяет все точки полилинии заданным массивом географических точек.

isEmpty() Boolean

Возвращает true, если у полилинии нет точек LatLng.

getCenter() LatLng

Возвращает центр (центр тяжести) полилинии.

getBounds() LatLngBounds

Возвращает LatLngBounds пути.

addLatLng(<LatLng> latlng) this

Добавляет заданную точку в полилинию. По умолчанию добавляет в первый контур полилинии в случае много-полилинии, но может быть переопределено путем передачи конкретного контура как массива LatLng (к которому вы можете получить доступ с помощью getLatLngs).

Метод Возвращает Описание
redraw() this

Перерисовывает слой. Иногда полезно после изменения координат, используемых путем.

setStyle(<Path options> style) this

Изменяет внешний вид пути на основе параметров в объекте Path options.

bringToFront() this

Выводит слой поверх всех слоёв пути.

bringToBack() this

Выводит слой под все слои пути.

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на заданную карту или группу слоёв.

remove() this

Удаляет слой с карты, на которой он активен.

removeFrom(<Map> map) this

Удаляет слой с указанной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий именованный слой на карте. Если name опущено, возвращает слой для данного слоя.

getAttribution() String

Используется attribution control, возвращает параметр атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающую подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет ранее привязанную всплывающую подсказку с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку в указанной latlng или в стандартной точке привязки подсказки, если latlng не указан.

closePopup() this

Закрывает всплывающую подсказку, привязанную к этому слою, если она открыта.

togglePopup() this

Открывает или закрывает всплывающую подсказку, привязанную к этому слою, в зависимости от её текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, в данный момент открыта.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getPopup() Popup

Возвращает всплывающую подсказку, привязанную к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает всплывающую подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет ранее привязанную всплывающую подсказку с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку в указанной latlng или в стандартной точке привязки подсказки, если latlng не указан.

closeTooltip() this

Закрывает всплывающую подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает всплывающую подсказку, привязанную к этому слою, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, в данный момент открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает всплывающую подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-слушатель (fn) к определенному типу события объекта. Можно необязательно указать контекст слушателя (объект, к которому будет относиться this). Также можно передать несколько типов, разделенных пробелом (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/слушатель, например {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-слушатель. Если функция не указана, удаляются все слушатели этого конкретного события от объекта. Обратите внимание, что если вы передали пользовательский контекст для on, вы должны передать тот же контекст для off, чтобы удалить слушателя.

off(<Object> eventMap) this

Удаляет набор пар тип/слушатель.

off() this

Удаляет всех слушателей всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Можно необязательно передать объект данных — свойства этого объекта будут первым аргументом функции-слушателя. Событие можно необязательно распространить на родительские события.

listens(<String> type) Boolean

Возвращает true, если у определенного типа события есть какие-либо прикрепленные слушатели.

once(…) this

Ведет себя как on(…), за исключением того, что слушатель будет вызван только один раз, а затем удален.

addEventParent(<Evented> obj) this

Добавляет родительское событие — Evented, которое будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительское событие, чтобы оно перестало получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Окружность

Класс для рисования наложений окружностей на карте. Расширяет CircleMarker. Это приближение, и оно начинает отклоняться от реальной окружности ближе к полюсам (из-за искажений проекции).

Пример использования

L.circle([50.5, 30.5], {radius: 200}).addTo(map);

Создание

Фабрика Описание
L.circle(<LatLng> latlng, <Circle options> options?) Создаёт объект окружности на основе географической точки и объекта опций, содержащего радиус окружности.
L.circle(<LatLng> latlng, <Number> radius, <Circle options> options?) Устаревший способ создания окружности, для совместимости с кодом 0.7.x. Не используйте в новых приложениях или плагинах.

Параметры

Параметр Тип По умолчанию Описание
radius Number Радиус окружности в метрах.
Параметр Тип По умолчанию Описание
stroke Boolean true Определяет, будет ли нарисована граница вдоль пути. Установите в значение false, чтобы отключить границы многоугольников или окружностей.
color String '#3388ff' Цвет границы
weight Number 3 Ширина границы в пикселях
opacity Number 1.0 Прозрачность границы
lineCap String 'round' Строка, определяющая форму, используемую в конце линии.
lineJoin String 'round' Строка, определяющая форму, используемую в углах линии.
dashArray String null Строка, определяющая паттерн штрихов линии. Не работает на слоях, использующих Canvas в некоторых старых браузерах.
dashOffset String null Строка, определяющая расстояние от начала до начала штриховки. Не работает на слоях, использующих Canvas в некоторых старых браузерах.
fill Boolean depends Определяет, будет ли фигура заполнена цветом. Установите в false, чтобы отключить заполнение многоугольников или окружностей.
fillColor String * Цвет заливки. По умолчанию соответствует значению параметра color.
fillOpacity Number 0.2 Прозрачность заливки.
fillRule String 'evenodd' Строка, определяющая как определяется внутренняя часть фигуры.
bubblingMouseEvents Boolean true Когда true, событие мыши на этом пути вызовет то же событие на карте (если не используется L.DomEvent.stopPropagation).
renderer Renderer Используйте этот конкретный экземпляр Renderer для этого пути. Имеет приоритет над стандартным рендерером карты.
className String null Пользовательское имя класса, задаваемое на элементе. Только для рендера SVG.
Параметр Тип По умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет вести себя как часть карты ниже.
Параметр Тип По умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на слой перекрытия карты. Изменение этого параметра поместит слой на другой слой по умолчанию.
attribution String null Строка, отображаемая в элементе управления подписями, описывает данные слоя, например "© Mapbox".

События

Событие Данные Описание
click MouseEvent Fired when the user clicks (or taps) the layer.
dblclick MouseEvent Fired when the user double-clicks (or double-taps) the layer.
mousedown MouseEvent Fired when the user pushes the mouse button on the layer.
mouseover MouseEvent Fired when the mouse enters the layer.
mouseout MouseEvent Fired when the mouse leaves the layer.
contextmenu MouseEvent Fired when the user right-clicks on the layer, prevents default browser context menu from showing if there are listeners on this event. Also fired on mobile when the user holds a single touch for a second (also called long press).
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
setRadius(<Number> radius) this

Устанавливает радиус окружности. Единицы измерения - метры.

getRadius() Number

Возвращает текущий радиус окружности. Единицы измерения - метры.

getBounds() LatLngBounds

Возвращает LatLngBounds пути.

Метод Возвращает Описание
toGeoJSON() Object

Возвращает представление маркера окружности в формате GeoJSON (как объект GeoJSON Point).

setLatLng(<LatLng> latLng) this

Устанавливает позицию маркера окружности в новом месте.

getLatLng() LatLng

Возвращает текущее географическое положение маркера окружности.

Метод Возвращает Описание
redraw() this

Перерисовывает слой. Иногда полезно после изменения координат, используемых путем.

setStyle(<Path options> style) this

Изменяет внешний вид объекта Path на основе опций в объекте Path options.

bringToFront() this

Выводит слой на передний план всех слоев путей.

bringToBack() this

Выводит слой на задний план всех слоев путей.

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой к заданной карте или группе слоев.

remove() this

Удаляет слой с карты, на которой он в настоящее время активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий именованный слой на карте. Если name опущено, возвращает слой для данного слоя.

getAttribution() String

Используется attribution control, возвращает параметр атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающую подсказку к слою с переданной content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающую подсказку, ранее привязанную с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку в указанной latlng или в стандартном якоре всплывающей подсказки, если latlng не передан.

closePopup() this

Закрывает всплывающую подсказку, привязанную к этому слою, если она открыта.

togglePopup() this

Открывает или закрывает всплывающую подсказку, привязанную к этому слою, в зависимости от ее текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, в настоящее время открыта.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getPopup() Popup

Возвращает всплывающую подсказку, привязанную к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданной content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или в стандартном якоре подсказки, если latlng не передан.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от ее текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-слушатель (fn) к определённому типу события объекта. Вы можете указать контекст слушателя (объект, к которому будет относиться ключевое слово this). Также вы можете передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар "тип/слушатель", например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-слушатель. Если функция не указана, будут удалены все слушатели этого конкретного события из объекта. Обратите внимание, что если вы передали пользовательский контекст для on, вы должны передать тот же контекст для off, чтобы удалить слушателя.

off(<Object> eventMap) this

Удаляет набор пар "тип/слушатель".

off() this

Удаляет всех слушателей всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно предоставить объект данных — свойства этого объекта будут доступны в качестве первого аргумента функции-слушателя. Событие может быть необязательно распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события существуют какие-либо присоединённые к нему слушатели.

once(…) this

Ведёт себя как on(…), за исключением того, что слушатель будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительское событие — Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родительское событие, поэтому оно перестанет получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

CircleMarker

Круг фиксированного размера с радиусом, указанным в пикселях. Расширяет Path.

Создание

Фабрика Описание
L.circleMarker(<LatLng> latlng, <CircleMarker options> options?) Создаёт объект маркера круга на основе географической точки и необязательного объекта параметров.

Параметры

Параметр Тип Значение по умолчанию Описание
radius Number 10 Радиус маркера круга в пикселях
Параметр Тип Значение по умолчанию Описание
stroke Boolean true Определяет, будет ли отрисовываться обводка по пути. Установите в false, чтобы отключить границы на многоугольниках или кругах.
color String '#3388ff' Цвет обводки
weight Number 3 Ширина обводки в пикселях
opacity Number 1.0 Непрозрачность обводки
lineCap String 'round' Строка, определяющая форму, используемую в конце обводки.
lineJoin String 'round' Строка, определяющая форму, используемую в углах обводки.
dashArray String null Строка, определяющая паттерн штрихов обводки. Не работает на слоях, основанных на Canvas в некоторых старых браузерах.
dashOffset String null Строка, определяющая расстояние в шаблоне штрихов для начала штриха. Не работает на слоях, основанных на Canvas в некоторых старых браузерах.
fill Boolean depends Определяет, будет ли заливаться путь цветом. Установите в false, чтобы отключить заливку многоугольников или кругов.
fillColor String * Цвет заливки. По умолчанию имеет значение параметра color
fillOpacity Number 0.2 Непрозрачность заливки.
fillRule String 'evenodd' Строка, определяющая как определяется внутренняя часть фигуры.
bubblingMouseEvents Boolean true При установке в значение true событие мыши на этом пути вызовет то же самое событие на карте (если не используется L.DomEvent.stopPropagation).
renderer Renderer Используйте конкретный экземпляр Renderer для этого пути. Имеет приоритет над по умолчанию рендерером карты.
className String null Пользовательское имя класса, установленное на элементе. Только для SVG рендера.
Параметр Тип Значение по умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет вести себя как часть базовой карты.
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен к слою наложения карты. Переопределение этого параметра приведет к размещению слоя по умолчанию на другом слое.
attribution String null Строка, отображаемая в элементе управления атрибутами, описывающая данные слоя, например, "© Mapbox".

События

Событие Данные Описание
click MouseEvent Fired when the user clicks (or taps) the layer.
dblclick MouseEvent Fired when the user double-clicks (or double-taps) the layer.
mousedown MouseEvent Fired when the user pushes the mouse button on the layer.
mouseover MouseEvent Fired when the mouse enters the layer.
mouseout MouseEvent Fired when the mouse leaves the layer.
contextmenu MouseEvent Fired when the user right-clicks on the layer, prevents default browser context menu from showing if there are listeners on this event. Also fired on mobile when the user holds a single touch for a second (also called long press).
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Event Data Description
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
toGeoJSON() Object

Возвращает представление кружка маркера в формате GeoJSON (как GeoJSON Point Feature).

setLatLng(<LatLng> latLng) this

Устанавливает положение кружка маркера в новом месте.

getLatLng() LatLng

Возвращает текущее географическое положение кружка маркера.

setRadius(<Number> radius) this

Устанавливает радиус кружка маркера. Единицы измерения — пиксели.

getRadius() Number

Возвращает текущий радиус кружка.

Метод Возвращает Описание
redraw() this

Перерисовывает слой. Иногда полезно после изменения координат, используемых путем.

setStyle(<Path options> style) this

Изменяет внешний вид Path на основе параметров в объекте Path options.

bringToFront() this

Выводит слой на верхний уровень всех слоёв с путями.

bringToBack() this

Выводит слой на нижний уровень всех слоёв с путями.

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой к заданной карте или группе слоёв.

remove() this

Удаляет слой с карты, на которой он в настоящее время активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий именованный pane на карте. Если name опущен, возвращает pane для данного слоя.

getAttribution() String

Используется модулем attribution control, возвращает опцию атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающую подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет ранее привязанную всплывающую подсказку с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку по указанным latlng или по умолчанию, если latlng не передан.

closePopup() this

Закрывает всплывающую подсказку, привязанную к данному слою, если она открыта.

togglePopup() this

Открывает или закрывает всплывающую подсказку, привязанную к данному слою, в зависимости от её текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, в настоящее время открыта.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getPopup() Popup

Возвращает всплывающую подсказку, привязанную к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет ранее привязанную подсказку с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку по указанным latlng или по умолчанию, если latlng не передан.

closeTooltip() this

Закрывает подсказку, привязанную к данному слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к данному слою, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определённому типу события объекта. Можно указать контекст обработчика (объект, к которому будет относиться this). Можно также передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, удаляются все обработчики этого события из объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Можно дополнительно указать объект данных — свойства которого будут первым аргументом функции обработчика. Событие может быть дополнительно распространено родительским событиям.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события прикреплены какие-либо обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительский элемент события — Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родительский элемент события, так что он больше не будет получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

SVG

Хотя SVG недоступен в IE7 и IE8, эти браузеры поддерживают VML, и в этом случае рендерер SVG переключится на VML. VML был устаревшим в 2012 году, что означает, что функциональность VML существует только для обратной совместимости со старыми версиями Internet Explorer.

Позволяет отображать векторные слои с помощью SVG. Наследует Renderer. Из-за технических ограничений, SVG не доступен во всех веб-браузерах, в частности, в Android 2.x и 3.x. Хотя SVG недоступен в IE7 и IE8, эти браузеры поддерживают VML (ныне устаревшая технология), и в этом случае рендерер SVG переключится на VML.

Пример использования

Используйте SVG по умолчанию для всех путей на карте:

var map = L.map('map', {
    renderer: L.svg()
});

Используйте рендерер SVG с дополнительным отступом для определённых векторных геометрий:

var map = L.map('map');
var myRenderer = L.svg({ padding: 0.5 });
var line = L.polyline( coordinates, { renderer: myRenderer } );
var circle = L.circle( center, { renderer: myRenderer } );

Параметры

Параметр Тип Значение по умолчанию Описание
padding Number 0.1 Насколько следует расширить область обрезки вокруг представления карты (относительно её размера), например, 0,1 будет соответствовать 10% представления карты в каждом направлении
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен в панель наложения карты. Переопределение этого параметра приведет к размещению слоя на другой панели по умолчанию.
attribution String null Строка, отображаемая в элементе управления атрибутами, описывает данные слоя, например, «© Mapbox».

События

Событие Данные Описание
update Event Fired when the renderer updates its bounds, center and zoom, for example when its map has moved
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращаемое значение Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой к указанной карте или группе слоёв.

remove() this

Удаляет слой с карты, на которой он в настоящее время активен.

removeFrom(<Map> map) this

Удаляет слой с указанной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющее именованную панель на карте. Если name опущено, возвращает панель для этого слоя.

getAttribution() String

Используется элементом управления атрибутами, возвращает параметр атрибутов.

Метод Возвращаемое значение Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающее окно к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет ранее привязанное всплывающее окно с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанное всплывающее окно в указанной latlng или по умолчанию, если latlng не передан.

closePopup() this

Закрывает привязанное к данному слою всплывающее окно, если оно открыто.

togglePopup() this

Открывает или закрывает привязанное к слою всплывающее окно в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если привязанное к слою всплывающее окно в данный момент открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, привязанного к этому слою.

getPopup() Popup

Возвращает всплывающее окно, привязанное к этому слою.

Метод Возвращаемое значение Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет ранее привязанную подсказку с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или по умолчанию, если latlng не передан.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к слою, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если привязанная к слою подсказка в данный момент открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-слушатель (fn) к определенному типу события объекта. Можно указать контекст слушателя (объект, на который будет указывать ключевое слово this). Также можно передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/слушатель, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-слушатель. Если функция не указана, будут удалены все слушатели этого конкретного события от объекта. Обратите внимание, что если вы передали пользовательский контекст для on, вы должны передать тот же контекст для off, чтобы удалить слушателя.

off(<Object> eventMap) this

Удаляет набор пар тип/слушатель.

off() this

Удаляет всех слушателей всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Можно необязательно указать объект данных — свойства этого объекта будут первым аргументом функции-слушателя. Событие может быть необязательно распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определенного типа события прикреплены какие-либо слушатели.

once(…) this

Ведет себя как on(…), за исключением того, что слушатель будет вызван один раз и затем удален.

addEventParent(<Evented> obj) this

Добавляет родительский обработчик событий — Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родительский обработчик событий, чтобы он перестал получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Функции

Существует несколько статических функций, которые можно вызывать без создания экземпляра L.SVG:
Функция Возвращает Описание
create(<String> name) SVGElement Возвращает экземпляр SVGElement, соответствующий переданному имени класса. Например, использование 'line' вернет экземпляр SVGLineElement.
pointsToPath(<Point[]> rings, <Boolean> closed) String Генерирует строку SVG path для множества колец, каждое кольцо превращается в инструкции "M..L..L.."

Полотно

Позволяет отображать векторные слои с помощью <canvas>. Наследует Renderer. Из-за технических ограничений, полотно недоступно во всех веб-браузерах, особенно в IE8, и перекрывающиеся геометрии могут не отображаться должным образом в некоторых крайних случаях.

Пример использования

Используйте полотно по умолчанию для всех путей на карте:

var map = L.map('map', {
    renderer: L.canvas()
});

Используйте рендерер полотна с дополнительным отступом для определенных векторных геометрий:

var map = L.map('map');
var myRenderer = L.canvas({ padding: 0.5 });
var line = L.polyline( coordinates, { renderer: myRenderer } );
var circle = L.circle( center, { renderer: myRenderer } );

Создание

Фабрика Описание
L.canvas(<Renderer options> options?) Создает рендерер полотна с заданными параметрами.

Параметры

Параметр Тип Значение по умолчанию Описание
padding Number 0.1 Насколько расширить область обрезки вокруг представления карты (относительно ее размера). Например, 0,1 будет 10% представления карты в каждом направлении
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен в слой наложения карты. Переопределение этого параметра приведет к размещению слоя на другом слое по умолчанию.
attribution String null Строка, которая будет отображаться в элементе управления атрибуцией, описывает данные слоя, например, "© Mapbox".

События

Событие Данные Описание
update Event Fired when the renderer updates its bounds, center and zoom, for example when its map has moved
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой к заданной карте или группе слоев.

remove() this

Удаляет слой с карты, на которой он в данный момент активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий собой слой с заданным именем на карте. Если name опущено, возвращает слой для этого слоя.

getAttribution() String

Используется элементом управления атрибуцией, возвращает параметр атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Связывает всплывающее окно со слоем с переданным content и настраивает необходимые обработчики событий. Если передается Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее привязанное с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанное всплывающее окно в указанной latlng или в стандартном якоре всплывающего окна, если latlng не передан.

closePopup() this

Закрывает привязанное всплывающее окно слоя, если оно открыто.

togglePopup() this

Открывает или закрывает привязанное всплывающее окно слоя в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если привязанное к этому слою всплывающее окно в данный момент открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, привязанного к этому слою.

getPopup() Popup

Возвращает всплывающее окно, привязанное к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает всплывающую подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет всплывающую подсказку, ранее привязанную к bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку в указанной latlng или по умолчанию в якорной точке всплывающей подсказки, если latlng не передан.

closeTooltip() this

Закрывает привязанную к слою всплывающую подсказку, если она открыта.

toggleTooltip() this

Открывает или закрывает привязанную к слою всплывающую подсказку в зависимости от ее текущего состояния.

isTooltipOpen() boolean

Возвращает true, если привязанная к слою всплывающая подсказка в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает привязанную к этому слою всплывающую подсказку.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определенному типу события объекта. Вы можете необязательно указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Вы также можете передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, все обработчики данного события будут удалены из объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off для удаления обработчика.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий в объекте.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Срабатывает событие указанного типа. Вы можете необязательно указать объект данных — первый аргумент функции-обработчика будет содержать его свойства. Событие необязательно может распространяться на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определенного типа события прикреплены какие-либо обработчики.

once(…) this

Ведет себя как on(…), за исключением того, что обработчик будет вызван только один раз и затем удален.

addEventParent(<Evented> obj) this

Добавляет родительское событие — Evented, которое будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительское событие, поэтому оно перестанет получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Группа слоев

Используется для группировки нескольких слоев и обработки их как одного. Если вы добавляете его на карту, любые слои, добавленные или удаленные из группы, также будут добавлены/удалены на карте. Расширяет Layer.

Пример использования

L.layerGroup([marker1, marker2])
    .addLayer(polyline)
    .addTo(map);

Создание

Фабрика Описание
L.layerGroup(<Layer[]> layers?) Создает группу слоев, необязательно с начальным набором слоев.

Параметры

Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на перекрывающий панель слоев карты. Переопределение этого параметра приведет к размещению слоя на другой панели по умолчанию.
attribution String null Строка, отображаемая в блоке атрибуции, описывающая данные слоя, например, "© Mapbox".

События

Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
toGeoJSON() Object

Возвращает представление группы слоев в формате GeoJSON (как GeoJSON FeatureCollection, GeometryCollection или MultiPoint).

addLayer(<Layer> layer) this

Добавляет заданный слой в группу.

removeLayer(<Layer> layer) this

Удаляет заданный слой из группы.

removeLayer(<Number> id) this

Удаляет слой с заданным внутренним идентификатором из группы.

hasLayer(<Layer> layer) Boolean

Возвращает true, если заданный слой в настоящее время добавлен в группу.

hasLayer(<Number> id) Boolean

Возвращает true, если заданный внутренний идентификатор в настоящее время добавлен в группу.

clearLayers() this

Удаляет все слои из группы.

invoke(<String> methodName, …) this

Вызывает methodName для каждого слоя в этой группе, передавая любые дополнительные параметры. Не оказывает никакого эффекта, если содержащиеся слои не реализуют methodName.

eachLayer(<Function> fn, <Object> context?) this

Перебирает слои группы, необязательно указывая контекст функции-итератора.

group.eachLayer(function (layer) {
    layer.bindPopup('Hello');
});
getLayer(<Number> id) Layer

Возвращает слой с заданным внутренним идентификатором.

getLayers() Layer[]

Возвращает массив всех слоев, добавленных в группу.

setZIndex(<Number> zIndex) this

Вызывает setZIndex для каждого слоя в этой группе, передавая z-индекс.

getLayerId(<Layer> layer) Number

Возвращает внутренний идентификатор слоя

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на заданную карту или группу слоёв.

remove() this

Удаляет слой с карты, на которой он в данный момент активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий собой заданный слой на карте. Если name опущено, возвращает слой для данного слоя.

getAttribution() String

Используется attribution control, возвращает параметр атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающую подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающую подсказку, ранее привязанную с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку в указанной latlng или по умолчанию, если latlng не указан.

closePopup() this

Закрывает всплывающую подсказку, привязанную к этому слою, если она открыта.

togglePopup() this

Открывает или закрывает всплывающую подсказку, привязанную к этому слою, в зависимости от её текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, в данный момент открыта.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getPopup() Popup

Возвращает всплывающую подсказку, привязанную к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или по умолчанию, если latlng не указан.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в данный момент открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определённому типу события объекта. Вы можете указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Также можно передать несколько типов, разделённых пробелами (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, удаляются все обработчики этого конкретного события в объекте. Обратите внимание, что если вы передали пользовательский контекст для on, вам необходимо передать тот же контекст для off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий в объекте.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно передать объект данных — свойства этого объекта будут первым аргументом функции обработчика. Событие необязательно может быть распространено родительским элементам.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события есть какие-либо прикреплённые обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительский элемент события — Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родительский элемент события, чтобы он перестал получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

FeatureGroup

Расширенный LayerGroup, который упрощает выполнение одних и тех же действий со всеми слоями-членами:

  • bindPopup привязывает всплывающую подсказку ко всем слоям сразу (аналогично bindTooltip)
  • События распространяются на FeatureGroup, поэтому если у группы есть обработчик событий, он будет обрабатывать события любого из слоёв. Это включает события мыши и пользовательские события.
  • Имеет события layeradd и layerremove

Пример использования

L.featureGroup([marker1, marker2, polyline])
    .bindPopup('Hello world!')
    .on('click', function() { alert('Clicked on a member of the group!'); })
    .addTo(map);

Создание

Фабрика Описание
L.featureGroup(<Layer[]> layers) Создаёт группу слоёв, необязательно с начальным набором слоёв.

Параметры

Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен в слой перекрытия карты. Переопределение этого параметра разместит слой по умолчанию на другом слое.
attribution String null Строка, отображаемая в блоке атрибуции, описывающая данные слоя, например "© Mapbox".

События

Событие Данные Описание
layeradd LayerEvent Fired when a layer is added to this FeatureGroup
layerremove LayerEvent Fired when a layer is removed from this FeatureGroup
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
setStyle(<Path options> style) this

Устанавливает заданные параметры пути для каждого слоя группы, у которого есть метод setStyle.

bringToFront() this

Перемещает группу слоёв в самый верхний слой среди всех остальных слоёв.

bringToBack() this

Перемещает группу слоёв в самый нижний слой среди всех остальных слоёв.

getBounds() LatLngBounds

Возвращает LatLngBounds группы элементов Feature (созданный из границ и координат её дочерних элементов).

Метод Возвращает Описание
toGeoJSON() Object

Возвращает представление группы слоёв в формате GeoJSON (как GeoJSON FeatureCollection, GeometryCollection или MultiPoint).

addLayer(<Layer> layer) this

Добавляет указанный слой в группу.

removeLayer(<Layer> layer) this

Удаляет указанный слой из группы.

removeLayer(<Number> id) this

Удаляет слой с заданным внутренним идентификатором из группы.

hasLayer(<Layer> layer) Boolean

Возвращает значение true, если указанный слой в настоящее время добавлен в группу.

hasLayer(<Number> id) Boolean

Возвращает значение true, если указанный внутренний идентификатор в настоящее время добавлен в группу.

clearLayers() this

Удаляет все слои из группы.

invoke(<String> methodName, …) this

Вызывает methodName для каждого слоя, содержащегося в этой группе, передавая любые дополнительные параметры. Не имеет эффекта, если содержащиеся слои не реализуют methodName.

eachLayer(<Function> fn, <Object> context?) this

Итерируется по слоям группы, необязательно указывая контекст функции итератора.

group.eachLayer(function (layer) {
    layer.bindPopup('Hello');
});
getLayer(<Number> id) Layer

Возвращает слой с заданным внутренним идентификатором.

getLayers() Layer[]

Возвращает массив всех добавленных в группу слоев.

setZIndex(<Number> zIndex) this

Вызывает setZIndex для каждого слоя, содержащегося в этой группе, передавая индекс z.

getLayerId(<Layer> layer) Number

Возвращает внутренний идентификатор слоя.

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой к заданной карте или группе слоев.

remove() this

Удаляет слой с карты, на которой он в настоящее время активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий указанный pane на карте. Если name опущено, возвращает pane для данного слоя.

getAttribution() String

Используется методом attribution control, возвращает опцию атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Связывает всплывающее окно со слоем с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее связанное с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает связанное всплывающее окно в указанной latlng или по умолчанию, если latlng не указан.

closePopup() this

Закрывает всплывающее окно, связанное с этим слоем, если оно открыто.

togglePopup() this

Открывает или закрывает всплывающее окно, связанное с этим слоем, в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает значение true, если всплывающее окно, связанное с этим слоем, в настоящее время открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, связанного с этим слоем.

getPopup() Popup

Возвращает всплывающее окно, связанное с этим слоем.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Связывает подсказку со слоем с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее связанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает связанную подсказку в указанной latlng или по умолчанию, если latlng не указан.

closeTooltip() this

Закрывает подсказку, связанную с этим слоем, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, связанную с этим слоем, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, связанная с этим слоем, в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, связанной с этим слоем.

getTooltip() Tooltip

Возвращает подсказку, связанную с этим слоем.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) на определенный тип события объекта. Вы можете необязательно указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Вы также можете передать несколько типов, разделённых пробелами (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, будут удалены все обработчики данного события для объекта. Обратите внимание, что если вы передали пользовательский контекст для on, вы должны передать тот же контекст для off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно предоставить объект данных — первое аргумент функции-обработчика будет содержать его свойства. Событие можно необязательно распространить на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определенного типа события есть какие-либо прикреплённые обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительское событие — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительское событие, чтобы оно перестало получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

GeoJSON

Представляет объект GeoJSON или массив объектов GeoJSON. Позволяет парсить данные GeoJSON и отображать их на карте. Расширяет FeatureGroup.

Пример использования

L.geoJSON(data, {
    style: function (feature) {
        return {color: feature.properties.color};
    }
}).bindPopup(function (layer) {
    return layer.feature.properties.description;
}).addTo(map);

Создание

Фабрика Описание
L.geoJSON(<Object> geojson?, <GeoJSON options> options?) Создаёт слой GeoJSON. Необязательно принимает объект в формате GeoJSON для отображения на карте (вы можете добавить его позже с помощью метода addData) и объект options.

Параметры

Параметр Тип Значение по умолчанию Описание
pointToLayer Function * Функция, определяющая, как точки GeoJSON генерируют слои Leaflet. Она вызывается внутри при добавлении данных, передавая геообъект GeoJSON и его LatLng. По умолчанию создаёт стандартный маркер:
function(geoJsonPoint, latlng) {
    return L.marker(latlng);
}
style Function * Функция, определяющая Path options для стилизации линий и полигонов GeoJSON, вызывается внутри при добавлении данных. Значение по умолчанию — не переопределять стандартные значения:
function (geoJsonFeature) {
    return {}
}
onEachFeature Function * Функция, которая будет вызвана один раз для каждого созданного Feature, после его создания и стилизации. Полезно для добавления событий и всплывающих подсказок к объектам. По умолчанию ничего не делается с недавно созданными слоями:
function (feature, layer) {}
filter Function * Функция, которая будет использоваться для определения, следует ли включать объект или нет. По умолчанию включаются все объекты:
function (geoJsonFeature) {
    return true;
}

Примечание: динамическое изменение параметра filter повлияет только на новые данные. Он не переоценит уже включенные объекты.

coordsToLatLng Function * Функция, которая будет использоваться для преобразования координат GeoJSON в LatLng. По умолчанию используется статический метод coordsToLatLng.
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на слой наложения карты. Переопределение этого параметра приведет к размещению слоя на другом слое по умолчанию.
attribution String null Строка, отображаемая в элементе управления атрибуцией, описывающая данные слоя, например, "© Mapbox".

События

Событие Данные Описание
layeradd LayerEvent Fired when a layer is added to this FeatureGroup
layerremove LayerEvent Fired when a layer is removed from this FeatureGroup
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
addData(data) this

Добавляет объект GeoJSON в слой.

resetStyle(layer) this

Сбрасывает стиль заданного векторного слоя на исходный стиль GeoJSON, полезно для сброса стиля после событий наведения.

setStyle(style) this

Изменяет стили векторных слоёв GeoJSON с помощью данной функции стиля.

Метод Возвращает Описание
bringToFront() this

Выводит группу слоёв вперёд всех остальных слоёв

bringToBack() this

Выводит группу слоёв назад всех остальных слоёв

getBounds() LatLngBounds

Возвращает LatLngBounds группы объектов (созданный из границ и координат её дочерних элементов).

Метод Возвращает Описание
toGeoJSON() Object

Возвращает представление группы слоёв в формате GeoJSON (как GeoJSON FeatureCollection, GeometryCollection или MultiPoint).

addLayer(<Layer> layer) this

Добавляет заданный слой в группу.

removeLayer(<Layer> layer) this

Удаляет заданный слой из группы.

removeLayer(<Number> id) this

Удаляет слой с заданным внутренним идентификатором из группы.

hasLayer(<Layer> layer) Boolean

Возвращает true, если заданный слой в настоящее время добавлен в группу.

hasLayer(<Number> id) Boolean

Возвращает true, если заданный внутренний идентификатор в настоящее время добавлен в группу.

clearLayers() this

Удаляет все слои из группы.

invoke(<String> methodName, …) this

Вызывает methodName для каждого слоя, содержащегося в этой группе, передавая любые дополнительные параметры. Не имеет эффекта, если содержащиеся слои не реализуют methodName.

eachLayer(<Function> fn, <Object> context?) this

Перебирает слои группы, необязательно указывая контекст функции итератора.

group.eachLayer(function (layer) {
    layer.bindPopup('Hello');
});
getLayer(<Number> id) Layer

Возвращает слой с заданным внутренним идентификатором.

getLayers() Layer[]

Возвращает массив всех слоёв, добавленных в группу.

setZIndex(<Number> zIndex) this

Вызывает setZIndex для каждого слоя, содержащегося в этой группе, передавая z-индекс.

getLayerId(<Layer> layer) Number

Возвращает внутренний идентификатор слоя.

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой к заданной карте или группе слоёв.

remove() this

Удаляет слой с карты, на которой он сейчас активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий именованный контейнер на карте. Если name опущено, возвращает контейнер для данного слоя.

getAttribution() String

Используется модулем attribution control, возвращает параметр атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающую подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающую подсказку, ранее привязанную с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку в указанной latlng или по умолчанию, если latlng не передан.

closePopup() this

Закрывает привязанную всплывающую подсказку слоя, если она открыта.

togglePopup() this

Открывает или закрывает всплывающую подсказку слоя в зависимости от текущего состояния.

isPopupOpen() boolean

Возвращает true, если привязанная к слою всплывающая подсказка открыта.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getPopup() Popup

Возвращает всплывающую подсказку, привязанную к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или по умолчанию, если latlng не передан.

closeTooltip() this

Закрывает привязанную подсказку слоя, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку слоя в зависимости от текущего состояния.

isTooltipOpen() boolean

Возвращает true, если привязанная к слою подсказка открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-слушатель (fn) к определенному типу события объекта. Можно необязательно указать контекст слушателя (объект, на который будет указывать ключевое слово this). Также можно передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/слушатель, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-слушатель. Если функция не указана, удаляет всех слушателей этого события для объекта. Обратите внимание, что если вы передали пользовательский контекст для on, вы должны передать тот же контекст для off, чтобы удалить слушателя.

off(<Object> eventMap) this

Удаляет набор пар тип/слушатель.

off() this

Удаляет всех слушателей всех событий для объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Можно необязательно указать объект данных — свойства объекта будут доступны в качестве первого аргумента функции-слушателя. Событие может быть необязательно распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определенного типа события есть какие-либо присоединенные слушатели.

once(…) this

Ведет себя как on(…), за исключением того, что слушатель будет вызван только один раз и затем удален.

addEventParent(<Evented> obj) this

Добавляет родительский элемент события — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительский элемент события, чтобы он перестал получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Функции

Существует несколько статических функций, которые можно вызывать без создания экземпляра L.GeoJSON:
Функция Возвращает Описание
geometryToLayer(<Object> featureData, <GeoJSON options> options?) Layer Создаёт Layer из заданного GeoJSON-объекта. Может использовать пользовательские функции pointToLayer и/или coordsToLatLng, если они переданы в качестве опций.
coordsToLatLng(<Array> coords) LatLng Создаёт объект LatLng из массива из 2 чисел (долгота, широта) или 3 чисел (долгота, широта, высота), используемых в GeoJSON для точек.
coordsToLatLngs(<Array> coords, <Number> levelsDeep?, <Function> coordsToLatLng?) Array Создаёт многомерный массив объектов LatLng из массива координат GeoJSON. levelsDeep определяет уровень вложенности (0 — массив точек, 1 — массив массивов точек и т.д., по умолчанию 0). Может использовать пользовательскую функцию coordsToLatLng.
latLngToCoords(<LatLng> latlng, <Number> precision?) Array Обратная функция к coordsToLatLng
latLngsToCoords(<Array> latlngs, <Number> levelsDeep?, <Boolean> closed?) Array Обратная функция к coordsToLatLngs closed определяет, должна ли первая точка быть добавлена в конец массива для закрытия фигуры, используется только когда levelsDeep равно 0. По умолчанию False.
asFeature(<Object> geojson) Object Нормализует GeoJSON-геометрии/объекты в GeoJSON-объекты.

GridLayer

Общий класс для обработки разбиения на плитки сетки HTML-элементов. Это базовый класс для всех слоёв плиток и заменяет TileLayer.Canvas. GridLayer можно расширить для создания разбиения на плитки сетки HTML-элементов, например, <canvas>, <img> или <div>. GridLayer будет обрабатывать создание и анимацию этих DOM-элементов за вас.

Пример использования

Синхронное использование

Для создания пользовательского слоя расширьте GridLayer и реализуйте метод createTile(), которому будет передан объект Point с координатами x, y и z (уровень масштаба) для отрисовки вашей плитки.

var CanvasLayer = L.GridLayer.extend({
    createTile: function(coords){
        // create a <canvas> element for drawing
        var tile = L.DomUtil.create('canvas', 'leaflet-tile');
        // setup tile width and height according to the options
        var size = this.getTileSize();
        tile.width = size.x;
        tile.height = size.y;
        // get a canvas context and draw something on it using coords.x, coords.y and coords.z
        var ctx = tile.getContext('2d');
        // return the tile so it can be rendered on screen
        return tile;
    }
});

Асинхронное использование

Создание плитки также может быть асинхронным, это полезно при использовании сторонней библиотеки отрисовки. После завершения отрисовки плитки её можно передать в обратный вызов done().

var CanvasLayer = L.GridLayer.extend({
    createTile: function(coords, done){
        var error;
        // create a <canvas> element for drawing
        var tile = L.DomUtil.create('canvas', 'leaflet-tile');
        // setup tile width and height according to the options
        var size = this.getTileSize();
        tile.width = size.x;
        tile.height = size.y;
        // draw something asynchronously and pass the tile to the done() callback
        setTimeout(function() {
            done(error, tile);
        }, 1000);
        return tile;
    }
});

Создание

Фабрика Описание
L.gridLayer(<GridLayer options> options?) Создаёт новый экземпляр GridLayer с предоставленными параметрами.

Параметры

Вариант Тип По умолчанию Описание
tileSize Number|Point 256 Ширина и высота тайлов в сетке. Используйте число, если ширина и высота равны, или L.point(width, height) в противном случае.
opacity Number 1.0 Непрозрачность тайлов. Может быть использована в функции createTile().
updateWhenIdle Boolean (depends) Загрузка новых тайлов только после окончания панорамирования. По умолчанию включено в мобильных браузерах, чтобы избежать избыточного количества запросов и обеспечить плавную навигацию. false в противном случае, чтобы отображать новые тайлы во время панорамирования, поскольку легко выйти за пределы параметра keepBuffer в настольных браузерах.
updateWhenZooming Boolean true По умолчанию плавная анимация масштабирования (во время масштабирования нажатием или flyTo()) будет обновлять слои сетки на каждом целочисленном уровне масштабирования. Установка данного параметра в false обновит слой сетки только после завершения плавной анимации.
updateInterval Number 200 Тайлы не будут обновляться чаще, чем один раз в каждые updateInterval миллисекунд при панорамировании.
zIndex Number 1 Явное значение zIndex слоя тайлов.
bounds LatLngBounds undefined При установке тайлы будут загружаться только внутри заданной области LatLngBounds.
minZoom Number 0 Минимальный уровень масштабирования, до которого будет отображаться этот слой (включительно).
maxZoom Number undefined Максимальный уровень масштабирования, до которого будет отображаться этот слой (включительно).
maxNativeZoom Number undefined Максимальное значение масштабирования, доступное для источника тайлов. Если указано, тайлы на всех уровнях масштабирования выше, чем maxNativeZoom, будут загружаться с уровня maxNativeZoom и автоматически масштабироваться.
minNativeZoom Number undefined Минимальное значение масштабирования, доступное для источника тайлов. Если указано, тайлы на всех уровнях масштабирования ниже, чем minNativeZoom, будут загружаться с уровня minNativeZoom и автоматически масштабироваться.
noWrap Boolean false Включает ли слой обёртку вокруг антимеридиана. Если true, GridLayer будет отображаться только один раз при низких уровнях масштабирования. Не влияет, если система координат карты CRS не обёрнута. Может использоваться в сочетании с bounds, чтобы предотвратить запрос тайлов за пределами границ CRS.
pane String 'tilePane' Map pane где будет добавлен слой сетки.
className String '' Пользовательское имя класса, которое будет присвоено слою тайлов. По умолчанию пустое.
keepBuffer Number 2 При панорамировании карты сохраняйте столько строк и столбцов тайлов перед их удалением.
Вариант Тип По умолчанию Описание
attribution String null Строка, отображаемая в блоке атрибуции, описывающая данные слоя, например, "© Mapbox".

События

Событие Данные Описание
loading Event Fired when the grid layer starts loading tiles.
tileunload TileEvent Fired when a tile is removed (e.g. when a tile goes off the screen).
tileloadstart TileEvent Fired when a tile is requested and starts loading.
tileerror TileErrorEvent Fired when there is an error loading a tile.
tileload TileEvent Fired when a tile loads.
load Event Fired when the grid layer loaded all visible tiles.
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращаемое значение Описание
bringToFront() this

Перемещает слой тайлов в верхнюю часть всех слоёв тайлов.

bringToBack() this

Перемещает слой тайлов в нижнюю часть всех слоёв тайлов.

getContainer() HTMLElement

Возвращает HTML-элемент, содержащий тайлы для данного слоя.

setOpacity(<Number> opacity) this

Изменяет непрозрачность слоя сетки.

setZIndex(<Number> zIndex) this

Изменяет zIndex слоя сетки.

isLoading() Boolean

Возвращает true, если какой-либо тайл в слое сетки ещё не завершил загрузку.

redraw() this

Принудительно очищает все тайлы слоя и запрашивает их повторно.

getTileSize() Point

Нормализует параметр tileSize в точку. Используется методом createTile().

Методы расширения

Слои, расширяющие GridLayer, должны переопределить следующий метод.
Метод Возвращаемое значение Описание
createTile(<Object> coords, <Function> done?) HTMLElement

Вызывается только внутренне, должен быть переопределён классами, расширяющими GridLayer. Возвращает HTMLElement, соответствующий данному coords. Если указан обратный вызов done, он должен быть вызван после завершения загрузки и отрисовки тайла.

Метод Возвращаемое значение Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на указанную карту или группу слоёв.

remove() this

Удаляет слой с карты, на которой он в настоящее время активен.

removeFrom(<Map> map) this

Удаляет слой с указанной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий указанный слой на карте. Если name опущен, возвращает слой для этого слоя.

getAttribution() String

Используется attribution control, возвращает параметр атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Связывает всплывающее окно с слоем с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее связанное с bindPopup.

openPopup(<LatLng> latlng?) this

Открывает связанное всплывающее окно в указанной latlng или по умолчанию в точке привязки всплывающего окна, если не передан latlng.

closePopup() this

Закрывает всплывающее окно, связанное с этим слоем, если оно открыто.

togglePopup() this

Открывает или закрывает всплывающее окно, связанное с этим слоем, в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающее окно, связанное с этим слоем, в настоящее время открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, связанного с этим слоем.

getPopup() Popup

Возвращает всплывающее окно, связанное с этим слоем.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Связывает подсказку со слоем с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее связанную с bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает связанную подсказку в указанной latlng или по умолчанию в точке привязки подсказки, если не передан latlng.

closeTooltip() this

Закрывает подсказку, связанную с этим слоем, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, связанную с этим слоем, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, связанная с этим слоем, в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, связанной с этим слоем.

getTooltip() Tooltip

Возвращает подсказку, связанную с этим слоем.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определённому типу события объекта. Можно необязательно указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Также можно передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар "тип/обработчик", например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, удаляются все обработчики этого события из объекта. Обратите внимание, если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар "тип/обработчик".

off() this

Удаляет все обработчики всех событий в объекте.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Необязательно можно передать объект данных — свойства объекта будут первым аргументом функции-обработчика. Событие можно необязательно распространить на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события есть какие-либо присоединённые обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительский обработчик событий — Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родительский обработчик событий, чтобы он перестал получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

LatLng

Представляет географическую точку с определённой широтой и долготой.

Пример использования

var latlng = L.latLng(50.5, 30.5);

Все методы Leaflet, принимающие объекты LatLng, также принимают их в простом формате массива и формате простого объекта (если не указано иное), поэтому эти строки эквивалентны:

map.panTo([50, 30]);
map.panTo({lon: 30, lat: 50});
map.panTo({lat: 50, lng: 30});
map.panTo(L.latLng(50, 30));

Создание

Фабрика Описание
L.latLng(<Number> latitude, <Number> longitude, <Number> altitude?) Создаёт объект, представляющий географическую точку с заданной широтой и долготой (и необязательной высотой).
L.latLng(<Array> coords) Ожидает массив вида [Number, Number] или [Number, Number, Number] вместо.
L.latLng(<Object> coords) Ожидает обычный объект вида {lat: Number, lng: Number} или {lat: Number, lng: Number, alt: Number} вместо.

Методы

Метод Возвращает Описание
equals(<LatLng> otherLatLng, <Number> maxMargin?) Boolean

Возвращает true, если заданная LatLng точка находится в той же позиции (в пределах небольшой погрешности). Погрешность может быть переопределена с помощью maxMargin, установив значение в небольшое число.

toString() String

Возвращает строковое представление точки (для отладки).

distanceTo(<LatLng> otherLatLng) Number

Возвращает расстояние (в метрах) до заданной LatLng, вычисленное с помощью формулы Гаверсинуса.

wrap() LatLng

Возвращает новый LatLng объект с долготой, обернутой так, что она всегда находится между -180 и +180 градусами.

toBounds(<Number> sizeInMeters) LatLngBounds

Возвращает новый LatLngBounds объект, в котором каждая граница находится на расстоянии sizeInMeters/2 метров от LatLng.

Свойства

Свойство Тип Описание
lat Number Latitude in degrees
lng Number Longitude in degrees
alt Number Altitude in meters (optional)

LatLngBounds

Представляет прямоугольную географическую область на карте.

Пример использования

var corner1 = L.latLng(40.712, -74.227),
corner2 = L.latLng(40.774, -74.125),
bounds = L.latLngBounds(corner1, corner2);

Все методы Leaflet, принимающие объекты LatLngBounds, также принимают их в простом формате массива (если не указано иное), поэтому пример границ выше можно передать так:

map.fitBounds([
    [40.712, -74.227],
    [40.774, -74.125]
]);

Внимание: если область пересекает антимеридиан (часто путают с линией перемены дат), вы должны указать углы вне диапазона долготы [-180, 180] градусов.

Создание

Factory Description
L.latLngBounds(<LatLng> corner1, <LatLng> corner2) Создаёт объект LatLngBounds, задавая две диагонально противоположные вершины прямоугольника.
L.latLngBounds(<LatLng[]> latlngs) Создаёт объект LatLngBounds, определяемый географическими точками, которые он содержит. Очень полезно для масштабирования карты для отображения определённого набора местоположений с помощью fitBounds.

Методы

Метод Возвращает Описание
extend(<LatLng> latlng) this

Расширяет область, чтобы она содержала заданную точку.

extend(<LatLngBounds> otherBounds) this

Расширяет область, чтобы она содержала заданную область.

pad(<Number> bufferRatio) LatLngBounds

Возвращает более обширную область, созданную путём расширения текущей области на заданный процент в каждом направлении.

getCenter() LatLng

Возвращает центральную точку области.

getSouthWest() LatLng

Возвращает юго-западную точку области.

getNorthEast() LatLng

Возвращает северо-восточную точку области.

getNorthWest() LatLng

Возвращает северо-западную точку области.

getSouthEast() LatLng

Возвращает юго-восточную точку области.

getWest() Number

Возвращает западную долготу области.

getSouth() Number

Возвращает южную широту области.

getEast() Number

Возвращает восточную долготу области.

getNorth() Number

Возвращает северную широту области.

contains(<LatLngBounds> otherBounds) Boolean

Возвращает true, если прямоугольник содержит заданный.

contains(<LatLng> latlng) Boolean

Возвращает true, если прямоугольник содержит заданную точку.

intersects(<LatLngBounds> otherBounds) Boolean

Возвращает true, если прямоугольник пересекается с заданной областью. Две области пересекаются, если у них есть хотя бы одна общая точка.

overlaps(<Bounds> otherBounds) Boolean

Возвращает true, если прямоугольник перекрывается с заданной областью. Две области перекрываются, если их пересечение является областью.

toBBoxString() String

Возвращает строку с координатами рамки в формате 'southwest_lng,southwest_lat,northeast_lng,northeast_lat'. Полезно для отправки запросов на веб-сервисы, возвращающие геоданные.

equals(<LatLngBounds> otherBounds, <Number> maxMargin?) Boolean

Возвращает true, если прямоугольник эквивалентен (с небольшой погрешностью) заданной области. Погрешность может быть переопределена путём установки maxMargin на небольшое значение.

isValid() Boolean

Возвращает true, если область правильно инициализирована.

Точка

Представляет точку с координатами x и y в пикселях.

Пример использования

var point = L.point(200, 300);

Все методы и опции Leaflet, которые принимают объекты Point, также принимают их в простом формате массива (если не указано иное), поэтому эти строки эквивалентны:

map.panBy([200, 300]);
map.panBy(L.point(200, 300));

Создание

Factory Description
L.point(<Number> x, <Number> y, <Boolean> round?) Создаёт объект Point с заданными координатами x и y. Если необязательное round установлено в true, округляет значения x и y.
L.point(<Number[]> coords) Ожидает массив в форме [x, y].
L.point(<Object> coords) Ожидает обычный объект в форме {x: Number, y: Number}.

Методы

Метод Возвращает Описание
clone() Point

Возвращает копию текущей точки.

add(<Point> otherPoint) Point

Возвращает результат сложения текущей и заданной точек.

subtract(<Point> otherPoint) Point

Возвращает результат вычитания заданной точки из текущей.

divideBy(<Number> num) Point

Возвращает результат деления текущей точки на заданное число.

multiplyBy(<Number> num) Point

Возвращает результат умножения текущей точки на заданное число.

scaleBy(<Point> scale) Point

Умножает каждую координату текущей точки на каждую координату scale. В терминах линейной алгебры умножает точку на матрицу масштабирования, определяемую scale.

unscaleBy(<Point> scale) Point

Обратное scaleBy. Делит каждую координату текущей точки на каждую координату scale.

round() Point

Возвращает копию текущей точки с округленными координатами.

floor() Point

Возвращает копию текущей точки с координатами, округлёнными вниз.

ceil() Point

Возвращает копию текущей точки с координатами, округлёнными вверх.

distanceTo(<Point> otherPoint) Number

Возвращает евклидово расстояние между текущей и заданной точками.

equals(<Point> otherPoint) Boolean

Возвращает true, если заданная точка имеет те же координаты.

contains(<Point> otherPoint) Boolean

Возвращает true, если обе координаты заданной точки меньше соответствующих координат текущей точки (по абсолютной величине).

toString() String

Возвращает строковое представление точки для отладки.

Свойства

Свойство Тип Описание
x Number The x coordinate of the point
y Number The y coordinate of the point

Границы

Представляет прямоугольную область в пиксельных координатах.

Пример использования

var p1 = L.point(10, 10),
p2 = L.point(40, 60),
bounds = L.bounds(p1, p2);

Все методы Leaflet, принимающие объекты Bounds, также принимают их в простом формате массива (если не указано иное), поэтому пример границ выше можно передать так:

otherBounds.intersects([[10, 10], [40, 60]]);

Создание

Factory Description
L.bounds(<Point> corner1, <Point> corner2) Создаёт объект Bounds из двух пар координат углов.
L.bounds(<Point[]> points) Создаёт объект Bounds из заданного массива точек.

Методы

Метод Возвращает Описание
extend(<Point> point) this

Расширяет область, чтобы она содержала заданную точку.

getCenter(<Boolean> round?) Point

Возвращает центральную точку области.

getBottomLeft() Point

Возвращает нижнюю левую точку области.

getTopRight() Point

Возвращает верхнюю правую точку области.

getTopLeft() Point

Возвращает верхнюю левую точку области (т.е. this.min).

getBottomRight() Point

Возвращает нижнюю правую точку области (т.е. this.max).

getSize() Point

Возвращает размер заданной области.

contains(<Bounds> otherBounds) Boolean

Возвращает true, если прямоугольник содержит заданный прямоугольник.

contains(<Point> point) Boolean

Возвращает true, если прямоугольник содержит заданную точку.

intersects(<Bounds> otherBounds) Boolean

Возвращает true, если прямоугольник пересекается с заданной областью. Две области пересекаются, если они имеют хотя бы одну общую точку.

overlaps(<Bounds> otherBounds) Boolean

Возвращает true, если прямоугольник перекрывается с заданной областью. Две области перекрываются, если их пересечение представляет собой область.

Свойства

Свойство Тип Описание
min Point The top left corner of the rectangle.
max Point The bottom right corner of the rectangle.

Значок

Представляет значок, который нужно предоставить при создании метки.

Пример использования

var myIcon = L.icon({
    iconUrl: 'my-icon.png',
    iconSize: [38, 95],
    iconAnchor: [22, 94],
    popupAnchor: [-3, -76],
    shadowUrl: 'my-icon-shadow.png',
    shadowSize: [68, 95],
    shadowAnchor: [22, 94]
});
L.marker([50.505, 30.57], {icon: myIcon}).addTo(map);

L.Icon.Default расширяет L.Icon и является синим значком, который Leaflet использует для меток по умолчанию.

Создание

Фабрика Описание
L.icon(<Icon options> options) Создает экземпляр значка с заданными параметрами.

Параметры

Параметр Тип Значение по умолчанию Описание
iconUrl String null (обязательно) URL изображения значка (абсолютный или относительный к пути вашего скрипта).
iconRetinaUrl String null URL изображения значка высокого разрешения (абсолютный или относительный к пути вашего скрипта). Используется для устройств с дисплеями Retina.
iconSize Point null Размер изображения значка в пикселях.
iconAnchor Point null Координаты "кончика" значка (относительно его верхнего левого угла). Значок будет выровнен таким образом, чтобы эта точка находилась в географическом местоположении метки. По умолчанию центрируется, если размер задан, также может быть задан в CSS с отрицательными отступами.
popupAnchor Point null Координаты точки, с которой будут "открываться" всплывающие окна, относительно якоря значка.
shadowUrl String null URL изображения тени значка. Если не указано, изображение тени не будет создано.
shadowRetinaUrl String null
shadowSize Point null Размер изображения тени в пикселях.
shadowAnchor Point null Координаты "кончика" тени (относительно её верхнего левого угла) (то же, что и iconAnchor, если не указано).
className String '' Пользовательское имя класса, которое будет назначено изображениям значка и тени. По умолчанию пустое.

Методы

Метод Возвращает Описание
createIcon(<HTMLElement> oldIcon?) HTMLElement

Вызывается в скрытом режиме, когда значок должен быть показан, возвращает элемент HTML <img>, стилизованный в соответствии с параметрами.

createShadow(<HTMLElement> oldIcon?) HTMLElement

Так же, как createIcon, но для тени под ним.

Icon.Default

Тривиальный подкласс Icon, представляющий значок, используемый в Marker по умолчанию, если значок не указан. Ссылается на изображение синей метки, распространяемое с выпусками Leaflet. Чтобы настроить значок по умолчанию, просто измените свойства L.Icon.Default.prototype.options (который представляет набор Icon options). Если вы хотите полностью заменить значок по умолчанию, замените L.Marker.prototype.options.icon своим собственным значком.
Параметр Тип Значение по умолчанию Описание
imagePath String Icon.Default попытается автоматически определить абсолютный путь к изображениям синего значка. Если вы размещаете эти изображения нестандартным образом, установите этот параметр, чтобы указать правильный абсолютный путь.

DivIcon

Представляет лёгкий значок для меток, который использует простой элемент <div> вместо изображения. Наследует от Icon, но игнорирует параметры iconUrl и shadow.

Пример использования

var myIcon = L.divIcon({className: 'my-div-icon'});
// you can set .my-div-icon styles in CSS
L.marker([50.505, 30.57], {icon: myIcon}).addTo(map);

По умолчанию, он имеет CSS класс 'leaflet-div-icon' и стилизован как небольшой белый квадрат с тенью.

Создание

Фабрика Описание
L.divIcon(<DivIcon options> options) Создаёт экземпляр DivIcon с заданными параметрами.

Параметры

Параметр Тип Значение по умолчанию Описание
html String '' Пользовательский HTML-код для размещения внутри элемента div, по умолчанию пустое.
bgPos Point [0, 0] Дополнительная относительная позиция фона в пикселях
Параметр Тип Значение по умолчанию Описание
iconUrl String null (обязательно) URL изображения значка (абсолютный или относительный к пути вашего скрипта).
iconRetinaUrl String null URL изображения значка высокого разрешения (абсолютный или относительный к пути вашего скрипта). Используется для устройств с дисплеями Retina.
iconSize Point null Размер изображения значка в пикселях.
iconAnchor Point null Координаты "кончика" значка (относительно его верхнего левого угла). Значок будет выровнен таким образом, чтобы эта точка находилась в географическом местоположении метки. По умолчанию центрируется, если размер задан, также может быть задан в CSS с отрицательными отступами.
popupAnchor Point null Координаты точки, с которой будут "открываться" всплывающие окна, относительно якоря значка.
shadowUrl String null URL изображения тени значка. Если не указано, изображение тени не будет создано.
shadowRetinaUrl String null
shadowSize Point null Размер изображения тени в пикселях.
shadowAnchor Point null Координаты "кончика" тени (относительно её верхнего левого угла) (то же, что и iconAnchor, если не указано).
className String '' Пользовательское имя класса, которое будет назначено изображениям значка и тени. По умолчанию пустое.

Методы

Метод Возвращает Описание
createIcon(<HTMLElement> oldIcon?) HTMLElement

Вызывается внутренне, когда нужно отобразить значок, возвращает элемент HTML-значка <img>, стилизованный в соответствии с параметрами.

createShadow(<HTMLElement> oldIcon?) HTMLElement

Аналогично createIcon, но для тени под ним.

Управление масштабом (Control.Zoom)

Базовое управление масштабом с двумя кнопками (увеличение и уменьшение). Оно добавляется на карту по умолчанию, если не установлено значение параметра zoomControl в false. Расширяет Control.

Создание

Фабрика Описание
L.control.zoom(<Control.Zoom options> options) Создаёт управление масштабом

Параметры

Параметр Тип Значение по умолчанию Описание
zoomInText String '+' Текст на кнопке "увеличить масштаб".
zoomInTitle String 'Zoom in' Заголовок кнопки "увеличить масштаб".
zoomOutText String '&#x2212 Текст на кнопке "уменьшить масштаб".
zoomOutTitle String 'Zoom out' Заголовок кнопки "уменьшить масштаб".
Параметр Тип Значение по умолчанию Описание
position String 'topright' Позиция управления (один из углов карты). Возможные значения: 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

Метод Возвращает Описание
getPosition() string

Возвращает позицию управления.

setPosition(<string> position) this

Устанавливает позицию управления.

getContainer() HTMLElement

Возвращает HTMLElement, содержащий управление.

addTo(<Map> map) this

Добавляет управление на данную карту.

remove() this

Удаляет управление с активной карты.

Управление атрибутами (Control.Attribution)

Управление атрибутами позволяет отображать данные атрибуции в небольшом текстовом поле на карте. Оно добавляется по умолчанию, если не установлено значение параметра attributionControl в false и автоматически извлекает тексты атрибуции из слоёв с помощью метода getAttribution. Расширяет Control.

Создание

Фабрика Описание
L.control.attribution(<Control.Attribution options> options) Создаёт управление атрибутами.

Параметры

Параметр Тип Значение по умолчанию Описание
prefix String 'Leaflet' HTML-текст, отображаемый перед атрибуциями. Используйте false для отключения.
Параметр Тип Значение по умолчанию Описание
position String 'topright' Позиция управления (один из углов карты). Возможные значения: 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

Метод Возвращает Описание
setPrefix(<String> prefix) this

Устанавливает текст перед атрибуциями.

addAttribution(<String> text) this

Добавляет текст атрибуции (например, 'Vector data &copy; Mapbox').

removeAttribution(<String> text) this

Удаляет текст атрибуции.

Метод Возвращает Описание
getPosition() string

Возвращает позицию управления.

setPosition(<string> position) this

Устанавливает позицию управления.

getContainer() HTMLElement

Возвращает HTMLElement, содержащий управление.

addTo(<Map> map) this

Добавляет управление на данную карту.

remove() this

Удаляет управление с активной карты.

Управление слоями (Control.Layers)

Управление слоями позволяет пользователям переключаться между различными базовыми слоями и включать/выключать наложения (см. подробный пример здесь). Расширяет Control.

Пример использования

var baseLayers = {
    "Mapbox": mapbox,
    "OpenStreetMap": osm
};
var overlays = {
    "Marker": marker,
    "Roads": roadsLayer
};
L.control.layers(baseLayers, overlays).addTo(map);

Параметры baseLayers и overlays — это объекты-литералы, где ключами являются имена слоёв, а значениями — объекты Layer:

{
    "<someName1>": layer1,
    "<someName2>": layer2
}

Имена слоёв могут содержать HTML, что позволяет добавлять дополнительный стиль к элементам:

{"<img src='my-layer-icon' /> <span class='my-layer-item'>My Layer</span>": myLayer}

Создание

Фабрика Описание
L.control.layers(<Object> baselayers?, <Object> overlays?, <Control.Layers options> options?) Создаёт управление атрибутами с заданными слоями. Базовые слои будут переключаться с помощью радиокнопок, а наложения — с помощью флажков. Обратите внимание, что все базовые слои должны быть переданы в объекте base layers, но только один должен быть добавлен на карту во время инициализации карты.

Параметры

Параметр Тип Значение по умолчанию Описание
collapsed Boolean true Если true, управление будет свернуто в значок и развернуто при наведении курсора или касании.
autoZIndex Boolean true Если true, управление будет назначать zIndexes слоям в порядке возрастания, чтобы порядок сохранялся при включении/выключении слоёв.
hideSingleBase Boolean false Если true, базовые слои в управлении будут скрыты, когда их будет только один.
sortLayers Boolean false Указывает, сортировать ли слои. При значении false, слои сохранят порядок, в котором они были добавлены в управление.
sortFunction Function * Функция сравнения для сортировки слоёв, если sortLayers установлено в true. Функция получает экземпляры L.Layer и их имена, как в sortFunction(layerA, layerB, nameA, nameB). По умолчанию слои сортируются по имени в алфавитном порядке.
Параметр Тип Значение по умолчанию Описание
position String 'topright' Позиция управления (один из углов карты). Возможные значения: 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

Метод Возвращает Описание
addBaseLayer(<Layer> layer, <String> name) this

Добавляет базовый слой (элемент радиокнопки) с заданным именем в элемент управления.

addOverlay(<Layer> layer, <String> name) this

Добавляет наложение (элемент флажка) с заданным именем в элемент управления.

removeLayer(<Layer> layer) this

Удаляет заданный слой из элемента управления.

expand() this

Развернуть контейнер элемента управления, если он свёрнут.

collapse() this

Свернуть контейнер элемента управления, если он развернут.

Метод Возвращает Описание
getPosition() string

Возвращает положение элемента управления.

setPosition(<string> position) this

Устанавливает положение элемента управления.

getContainer() HTMLElement

Возвращает HTMLElement, содержащий элемент управления.

addTo(<Map> map) this

Добавляет элемент управления на заданную карту.

remove() this

Удаляет элемент управления с карты, на которой он в данный момент активен.

Control.Scale

Простой элемент управления масштабом, отображающий масштаб текущего центра экрана в метрической (м/км) и имперской (ми/футах) системах. Расширяет Control.

Пример использования

L.control.scale().addTo(map);

Создание

Фабрика Описание
L.control.scale(<Control.Scale options> options?) Создает элемент управления масштабом с заданными параметрами.

Параметры

Параметр Тип По умолчанию Описание
maxWidth Number 100 Максимальная ширина элемента управления в пикселях. Ширина устанавливается динамически для отображения круглых значений (например, 100, 200, 500).
metric Boolean True Отображать ли метрическую шкалу (м/км).
imperial Boolean True Отображать ли имперскую шкалу (ми/футах).
updateWhenIdle Boolean false Если true, элемент управления обновляется при moveend, в противном случае он всегда обновлен (обновляется при move).
Параметр Тип По умолчанию Описание
position String 'topright' Положение элемента управления (один из углов карты). Возможные значения: 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

Метод Возвращает Описание
getPosition() string

Возвращает положение элемента управления.

setPosition(<string> position) this

Устанавливает положение элемента управления.

getContainer() HTMLElement

Возвращает HTMLElement, содержащий элемент управления.

addTo(<Map> map) this

Добавляет элемент управления на заданную карту.

remove() this

Удаляет элемент управления с карты, на которой он в данный момент активен.

Браузер

Пространство имен со статическими свойствами для определения браузера/функциональных возможностей, используемое Leaflet внутри.

Пример использования

if (L.Browser.ielt9) {
  alert('Upgrade your browser, dude!');
}

Свойства

Свойство Тип Описание
ie Boolean true for all Internet Explorer versions (not Edge).
ielt9 Boolean true for Internet Explorer versions less than 9.
edge Boolean true for the Edge web browser.
webkit Boolean true for webkit-based browsers like Chrome and Safari (including mobile versions).
android Boolean true for any browser running on an Android platform.
android23 Boolean true for browsers running on Android 2 or Android 3.
opera Boolean true for the Opera browser
chrome Boolean true for the Chrome browser.
gecko Boolean true for gecko-based browsers like Firefox.
safari Boolean true for the Safari browser.
opera12 Boolean true for the Opera browser supporting CSS transforms (version 12 or later).
win Boolean true when the browser is running in a Windows platform
ie3d Boolean true for all Internet Explorer versions supporting CSS transforms.
webkit3d Boolean true for webkit-based browsers supporting CSS transforms.
gecko3d Boolean true for gecko-based browsers supporting CSS transforms.
any3d Boolean true for all browsers supporting CSS transforms.
mobile Boolean true for all browsers running in a mobile device.
mobileWebkit Boolean true for all webkit-based browsers in a mobile device.
mobileWebkit3d Boolean true for all webkit-based browsers in a mobile device supporting CSS transforms.
msPointer Boolean true for browsers implementing the Microsoft touch events model (notably IE10).
pointer Boolean true for all browsers supporting pointer events.
touch Boolean true for all browsers supporting touch events. This does not necessarily mean that the browser is running in a computer with a touchscreen, it only means that the browser is capable of understanding touch events.
mobileOpera Boolean true for the Opera browser in a mobile device.
mobileGecko Boolean true for gecko-based browsers running in a mobile device.
retina Boolean true for browsers on a high-resolution "retina" screen.
canvas Boolean true when the browser supports <canvas>.
svg Boolean true when the browser supports SVG.
vml Boolean true if the browser supports VML.

Утилиты

Различные вспомогательные функции, используемые Leaflet внутри.

Функции

Функция Возвращает Описание
extend(<Object> dest, <Object> src?) Object Объединяет свойства объекта src (или нескольких объектов) в объект dest и возвращает последний. Имеет сокращение L.extend.
create(<Object> proto, <Object> properties?) Object Полифилл совместимости для Object.create
bind(<Function> fn, …) Function Возвращает новую функцию, связанную с переданными аргументами, как Function.prototype.bind. Имеет сокращение L.bind().
stamp(<Object> obj) Number Возвращает уникальный идентификатор объекта, присваивая его, если его нет.
throttle(<Function> fn, <Number> time, <Object> context) Function Возвращает функцию, которая выполняет функцию fn со заданным контекстом context (чтобы ключевое слово this ссылалось на context внутри кода fn). Функция fn будет вызываться не более одного раза за заданное количество time. Аргументы, полученные связанной функцией, будут любыми аргументами, переданными при связывании функции, за которыми следуют любые аргументы, переданные при вызове связанной функции. Имеет сокращение L.throttle.
wrapNum(<Number> num, <Number[]> range, <Boolean> includeMax?) Number Возвращает число num по модулю range таким образом, чтобы оно находилось в пределах от range[0] до range[1]. Возвращаемое значение всегда будет меньше range[1], если не задано includeMax как true.
falseFn() Function Возвращает функцию, которая всегда возвращает false.
formatNum(<Number> num, <Number> digits?) Number Возвращает число num, округлённое до digits десятичных знаков, или до 5 знаков по умолчанию.
trim(<String> str) String Полифилл совместимости для String.prototype.trim
splitWords(<String> str) String[] Обрезает и разделяет строку по пробелам и возвращает массив частей.
setOptions(<Object> obj, <Object> options) Object Объединяет заданные свойства с опциями options объекта obj, возвращая результирующие опции. См. Class options. Имеет сокращение L.setOptions.
getParamString(<Object> obj, <String> existingUrl?, <Boolean> uppercase?) String Преобразует объект в строку параметров URL, например, {a: "foo", b: "bar"} преобразуется в '?a=foo&b=bar'. Если existingUrl задано, параметры будут добавлены в конец. Если uppercase равно true, имена параметров будут преобразованы в верхний регистр (например, '?A=foo&B=bar').
template(<String> str, <Object> data) String Простая система шаблонов, принимает строку шаблона вида 'Hello {a}, {b}' и объект данных, такой как {a: 'foo', b: 'bar'}, возвращает обработанную строку ('Hello foo, bar'). Вы также можете указать функции вместо строк для значений данных — они будут оценены, передавая data в качестве аргумента.
isArray(obj) Boolean Полифилл совместимости для Array.isArray
indexOf(<Array> array, <Object> el) Number Полифилл совместимости для Array.prototype.indexOf
requestAnimFrame(<Function> fn, <Object> context?, <Boolean> immediate?) Number Планирует выполнение fn при перерисовке браузера. fn привязан к context, если задан. Если immediate задано, fn вызывается немедленно, если браузер не поддерживает родную функцию window.requestAnimationFrame, в противном случае она откладывается. Возвращает идентификатор запроса, который может быть использован для отмены запроса.
cancelAnimFrame(<Number> id) undefined Отменяет предыдущий requestAnimFrame. См. также window.cancelAnimationFrame.

Свойства

Свойство Тип Описание
lastId Number Last unique ID used by stamp()
emptyImageUrl String Data URI string containing a base64-encoded empty GIF image. Used as a hack to free memory from unused images on WebKit-powered mobile devices (by setting image src to this string).

Преобразование

Представляет аффинное преобразование: набор коэффициентов a, b, c, d для преобразования точки вида (x, y) в (a*x + b, c*y + d) и обратное преобразование. Используется Leaflet в коде проекций.

Пример использования

var transformation = L.transformation(2, 5, -1, 10),
    p = L.point(1, 2),
    p2 = transformation.transform(p), //  L.point(7, 8)
    p3 = transformation.untransform(p2); //  L.point(1, 2)

Создание

Фабрика Описание
L.transformation(<Number> a, <Number> b, <Number> c, <Number> d) Создаёт объект Transformation с заданными коэффициентами.
L.transformation(<Array> coefficients) Ожидает массив коэффициентов вида [a: Number, b: Number, c: Number, d: Number].

Методы

Метод Возвращает Описание
transform(<Point> point, <Number> scale?) Point

Возвращает преобразованную точку, необязательно умноженную на заданный масштаб. Принимает только экземпляры L.Point, а не массивы.

untransform(<Point> point, <Number> scale?) Point

Возвращает обратное преобразование заданной точки, необязательно делённое на заданный масштаб. Принимает только экземпляры L.Point, а не массивы.

LineUtil

Различные вспомогательные функции для обработки точек полилиний, используемые Leaflet для ускорения работы с полилиниями.

Функции

Функция Возвращает Описание
simplify(<Point[]> points, <Number> tolerance) Point[] Значительно уменьшает количество точек в полилинии, сохраняя её форму, и возвращает новый массив упрощенных точек, используя алгоритм Douglas-Peucker. Используется для существенного повышения производительности при обработке/отображении полилиний Leaflet для каждого уровня масштабирования, а также для снижения визуального шума. tolerance влияет на степень упрощения (меньшее значение означает более высокое качество, но медленнее и с большим количеством точек). Также выпущен как отдельная микробиблиотека Simplify.js.
pointToSegmentDistance(<Point> p, <Point> p1, <Point> p2) Number Возвращает расстояние между точкой p и отрезком p1 до p2.
closestPointOnSegment(<Point> p, <Point> p1, <Point> p2) Number Возвращает ближайшую точку к точке p на отрезке p1 до p2.
clipSegment(<Point> a, <Point> b, <Bounds> bounds, <Boolean> useLastCode?, <Boolean> round?) Point[]|Boolean Обрезает отрезок a до b границами прямоугольника с помощью алгоритма Cohen-Sutherland (прямо изменяя точки отрезка!). Используется Leaflet для отображения только точек полилинии, которые находятся на экране или рядом, что увеличивает производительность.
isFlat(<LatLng[]> latlngs) Boolean Возвращает true, если latlngs является плоским массивом, false - если вложенным.

PolyUtil

Различные вспомогательные функции для геометрии полигонов.

Функции

Функция Возвращает Описание
clipPolygon(<Point[]> points, <Bounds> bounds, <Boolean> round?) Point[] Обрезает геометрию полигона, определяемую заданным points, по заданным границам (используя алгоритм Sutherland-Hodgeman). Используется Leaflet для отображения только точек полигона, которые находятся на экране или рядом, что увеличивает производительность. Обратите внимание, что точки полигона требуют другого алгоритма обрезки, чем полилинии, поэтому для этого есть отдельный метод.

DomEvent

Вспомогательные функции для работы с событиями DOM, используемые Leaflet внутри.

Функции

Функция Возвращает Описание
on(<HTMLElement> el, <String> types, <Function> fn, <Object> context?) this Добавляет функцию-обработчик (fn) к определенному типу события DOM элемента el. Можно необязательно указать контекст обработчика (объект, к которому будет указывать ключевое слово this). Также можно передать несколько типов через пробел (например, 'click dblclick').
on(<HTMLElement> el, <Object> eventMap, <Object> context?) this Добавляет набор пар тип/обработчик, например {click: onClick, mousemove: onMouseMove}
off(<HTMLElement> el, <String> types, <Function> fn, <Object> context?) this Удаляет ранее добавленную функцию-обработчик. Если функция не указана, удаляются все обработчики данного типа события DOM для элемента. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off для удаления обработчика.
off(<HTMLElement> el, <Object> eventMap, <Object> context?) this Удаляет набор пар тип/обработчик, например {click: onClick, mousemove: onMouseMove}
off(<HTMLElement> el) this Удаляет все известные обработчики событий
stopPropagation(<DOMEvent> ev) this Прекращает распространение данного события на родительские элементы. Используется внутри функций-обработчиков:
L.DomEvent.on(div, 'click', function (ev) {
    L.DomEvent.stopPropagation(ev);
});
disableScrollPropagation(<HTMLElement> el) this Добавляет stopPropagation к событиям элемента 'mousewheel' (плюс варианты браузеров).
disableClickPropagation(<HTMLElement> el) this Добавляет stopPropagation к событиям элемента 'click', 'doubleclick', 'mousedown' и 'touchstart' (плюс варианты браузеров).
preventDefault(<DOMEvent> ev) this Препятствует выполнению действия по умолчанию события DOM ev (например, переходу по ссылке в href элемента a или выполнению POST-запроса с перезагрузкой страницы при отправке формы <form>). Используйте внутри функций-обработчиков.
stop(ev) this Выполняет stopPropagation и preventDefault одновременно.
getMousePosition(<DOMEvent> ev, <HTMLElement> container?) Point Получает нормализованную позицию курсора мыши из события DOM относительно container или всей страницы, если не указано другое.
getWheelDelta(<DOMEvent> ev) Number Получает нормализованное значение изменения прокрутки от события DOM колесика мыши, в пикселях вертикальной прокрутки (отрицательное значение при прокрутке вниз). События от указательных устройств без точной прокрутки сопоставляются с наилучшим приближением в 60 пикселей.
addListener(…) this Псевдоним для L.DomEvent.on
removeListener(…) this Псевдоним для L.DomEvent.off

DomUtil

Утилитарные функции для работы с деревом DOM, используемые Leaflet внутри. Большинство функций, ожидающих или возвращающих HTMLElement, также работают для элементов SVG. Единственное различие заключается в том, что классы относятся к классам CSS в HTML и классам SVG в SVG.

Функции

Функция Возвращает Описание
get(<String|HTMLElement> id) HTMLElement Возвращает элемент по его ID DOM или сам элемент, если он был передан напрямую.
getStyle(<HTMLElement> el, <String> styleAttrib) String Возвращает значение определенного атрибута стиля элемента, включая вычисленные значения или значения, заданные через CSS.
create(<String> tagName, <String> className?, <HTMLElement> container?) HTMLElement Создает HTML-элемент с tagName, устанавливает его класс на className и необязательно добавляет его к элементу container.
remove(<HTMLElement> el) Удаляет el из родительского элемента
empty(<HTMLElement> el) Удаляет все дочерние элементы el из el
toFront(<HTMLElement> el) Делает el последним ребенком родителя, чтобы он отображался перед другими детьми.
toBack(<HTMLElement> el) Делает el первым ребенком родителя, чтобы он отображался позади других детей.
hasClass(<HTMLElement> el, <String> name) Boolean Возвращает true, если атрибут класса элемента содержит name.
addClass(<HTMLElement> el, <String> name) Добавляет name к атрибуту класса элемента.
removeClass(<HTMLElement> el, <String> name) Удаляет name из атрибута класса элемента.
setClass(<HTMLElement> el, <String> name) Устанавливает класс элемента.
getClass(<HTMLElement> el) String Возвращает класс элемента.
setOpacity(<HTMLElement> el, <Number> opacity) Устанавливает непрозрачность элемента (включая поддержку старых IE). opacity должна быть числом от 0 до 1.
testProp(<String[]> props) String|false Перебирает массив имён стилей и возвращает первое имя, которое является допустимым именем стиля для элемента. Если такое имя не найдено, возвращает false. Полезно для стилей с префиксом производителя, таких как transform.
setTransform(<HTMLElement> el, <Point> offset, <Number> scale?) Сбрасывает 3D-трансформацию CSS элемента el, чтобы он был сдвинут на offset пикселей и необязательно масштабирован на scale. Не имеет эффекта, если браузер не поддерживает 3D-трансформации CSS.
setPosition(<HTMLElement> el, <Point> position) Устанавливает позицию el в координаты, указанные в position, используя CSS translate или позиционирование top/left в зависимости от браузера (используется Leaflet внутри для позиционирования своих слоёв).
getPosition(<HTMLElement> el) Point Возвращает координаты элемента, ранее позиционированного с помощью setPosition.
disableTextSelection() Препятствует генерации пользователем событий selectstart DOM, обычно генерируемых, когда пользователь перетаскивает мышь по странице с текстом. Используется Leaflet внутри для переопределения поведения любых взаимодействий с перетаскиванием по карте. Затрагивает взаимодействия с перетаскиванием на всей странице.
enableTextSelection() Отменяет действие предыдущей L.DomUtil.disableTextSelection.
disableImageDrag() Как L.DomUtil.disableTextSelection, но для событий dragstart DOM, которые обычно генерируются, когда пользователь перетаскивает изображение.
enableImageDrag() Отменяет действие предыдущей L.DomUtil.disableImageDrag.
preventOutline(<HTMLElement> el) Делает контур элемента el невидимым. Используется Leaflet внутри для предотвращения отображения контура фокусируемых элементов, когда пользователь выполняет перетаскивание на них.
restoreOutline() Отменяет действие предыдущего L.DomUtil.preventOutline.

Свойства

Свойство Тип Описание
TRANSFORM String Vendor-prefixed transform style name (e.g. 'webkitTransform' for WebKit).
TRANSITION String Vendor-prefixed transition style name.
TRANSITION_END String Vendor-prefixed transitionend event name.

PosAnimation

Используется для анимаций перемещения, используя CSS3 Transitions для современных браузеров и таймер-fallback для IE6-9.

Пример использования

var fx = new L.PosAnimation();
fx.run(el, [300, 500], 0.5);

Конструктор

Конструктор Описание
L.PosAnimation() Создаёт объект PosAnimation.

События

Событие Данные Описание
start Event Fired when the animation starts
step Event Fired continuously during the animation.
end Event Fired when the animation ends.

Методы

Метод Возвращает Описание
run(<HTMLElement> el, <Point> newPos, <Number> duration?, <Number> easeLinearity?)

Запускает анимацию заданного элемента в новую позицию, необязательно устанавливая продолжительность в секундах (0.25 по умолчанию) и фактор линейности плавности (третий аргумент кривой кубического безиера, 0.5 по умолчанию).

stop()

Останавливает анимацию (если она выполняется).

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-слушатель (fn) к определенному типу события объекта. Можно указать контекст слушателя (объект, к которому будет относиться this). Также можно передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/слушатель, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-слушатель. Если функция не указана, удаляются все слушатели указанного события для объекта. Обратите внимание, что если вы передали пользовательский контекст для on, вы должны передать тот же контекст для off, чтобы удалить слушателя.

off(<Object> eventMap) this

Удаляет набор пар тип/слушатель.

off() this

Удаляет всех слушателей всех событий для объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Можно дополнительно передать объект данных — свойства объекта будут содержаться в первом аргументе функции-слушателя. Событие может быть распространено родительским объектам.

listens(<String> type) Boolean

Возвращает true, если для указанного типа события есть какие-либо присоединенные слушатели.

once(…) this

Ведёт себя как on(…), за исключением того, что слушатель будет вызван один раз и затем удалён.

addEventParent(<Evented> obj) this

Добавляет родителя события — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родителя события, чтобы он перестал получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Draggable

Класс для создания перетаскиваемых элементов DOM (включая поддержку touch). Используется внутри для перетаскивания маркеров и карты. Работает только для элементов, позиционированных с помощью L.DomUtil.setPosition.

Draggable-example

var draggable = new L.Draggable(elementToDrag);
draggable.enable();

Draggable-constructor

Конструктор Описание
L.Draggable(<HTMLElement> el, <HTMLElement> dragHandle?, <Boolean> preventOutline?, <Draggable options> options?) Создаёт объект Draggable для перемещения el при начале перетаскивания элемента dragHandle (по умолчанию равен самому элементу el).

Draggable-option

Опция Тип Значение по умолчанию Описание
clickTolerance Number 3 Максимальное число пикселей, которое пользователь может сдвинуть указатель мыши во время нажатия, чтобы оно считалось действительным щелчком (в отличие от перетаскивания мыши).

Draggable-event

Событие Данные Описание
down Event Fired when a drag is about to start.
dragstart Event Fired when a drag starts
predrag Event Fired continuously during dragging before each corresponding update of the element's position.
drag Event Fired continuously during dragging.
dragend DragEndEvent Fired when the drag ends.

Draggable-method

Метод Возвращает Описание
enable()

Включает возможность перетаскивания

disable()

Отключает возможность перетаскивания

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-слушатель (fn) к определенному типу события объекта. Можно указать контекст слушателя (объект, к которому будет относиться this). Также можно передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/слушатель, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-слушатель. Если функция не указана, удаляются все слушатели указанного события для объекта. Обратите внимание, что если вы передали пользовательский контекст для on, вы должны передать тот же контекст для off, чтобы удалить слушателя.

off(<Object> eventMap) this

Удаляет набор пар тип/слушатель.

off() this

Удаляет всех слушателей всех событий для объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Можно дополнительно передать объект данных — свойства объекта будут содержаться в первом аргументе функции-слушателя. Событие может быть распространено родительским объектам.

listens(<String> type) Boolean

Возвращает true, если для указанного типа события есть какие-либо присоединенные слушатели.

once(…) this

Ведёт себя как on(…), за исключением того, что слушатель будет вызван один раз и затем удалён.

addEventParent(<Evented> obj) this

Добавляет родителя события — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родителя события, чтобы он перестал получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Класс

L.Class обеспечивает возможности ООП в Leaflet и используется для создания почти всех классов Leaflet, описанных здесь. Помимо реализации простой модели наследования, он вводит несколько специальных свойств для удобной организации кода — options, includes и statics.

Класс-пример

var MyClass = L.Class.extend({
initialize: function (greeter) {
    this.greeter = greeter;
    // class constructor
},
greet: function (name) {
    alert(this.greeter + ', ' + name)
    }
});
// create instance of MyClass, passing "Hello" to the constructor
var a = new MyClass("Hello");
// call greet method, alerting "Hello, World"
a.greet("World");

Фабрики классов

Вы, возможно, заметили, что объекты Leaflet создаются без использования ключевого слова new. Это достигается путём дополнения каждого класса методом-фабрикой в нижнем регистре:

new L.Map('map'); // becomes:
L.map('map');

Фабрики реализуются очень просто, и вы можете сделать это для своих собственных классов:

L.map = function (id, options) {
    return new L.Map(id, options);
};

Наследование

Вы используете L.Class.extend для определения новых классов, но вы можете использовать этот же метод для любого класса, чтобы унаследовать от него:

var MyChildClass = MyClass.extend({
    // ... new properties and methods
});

Это создаст класс, который унаследует все методы и свойства родительского класса (через правильную цепочку прототипов), добавит или переопределит те, которые вы передали в extend. Он также правильно отреагирует на instanceof:

var a = new MyChildClass();
a instanceof MyChildClass; // true
a instanceof MyClass; // true

Вы можете вызывать родительские методы (включая конструктор) из соответствующих дочерних (как вы делаете с вызовами super в других языках), обращаясь к прототипу родительского класса и используя JavaScript's call или apply:

var MyChildClass = MyClass.extend({
    initialize: function () {
        MyClass.prototype.initialize.call(this, "Yo");
    },
    greet: function (name) {
        MyClass.prototype.greet.call(this, 'bro ' + name + '!');
    }
});
var a = new MyChildClass();
a.greet('Jason'); // alerts "Yo, bro Jason!"

Опции

options — специальное свойство, которое, в отличие от других объектов, передаваемых в extend, будет объединено с родительским, а не полностью переопределено, что делает удобным управление конфигурацией объектов и значениями по умолчанию:

var MyClass = L.Class.extend({
    options: {
        myOption1: 'foo',
        myOption2: 'bar'
    }
});
var MyChildClass = MyClass.extend({
    options: {
        myOption1: 'baz',
        myOption3: 5
    }
});
var a = new MyChildClass();
a.options.myOption1; // 'baz'
a.options.myOption2; // 'bar'
a.options.myOption3; // 5
END_OF_DOCUMENT_MARKER

Также есть L.Util.setOptions, метод для удобного объединения опций, переданных в конструктор, со значениями по умолчанию, определёнными в классе:

var MyClass = L.Class.extend({
    options: {
        foo: 'bar',
        bla: 5
    },
    initialize: function (options) {
        L.Util.setOptions(this, options);
        ...
    }
});
var a = new MyClass({bla: 10});
a.options; // {foo: 'bar', bla: 10}

Включения

includes — это специальное свойство класса, которое объединяет все указанные объекты в класс (такие объекты называются миксинами).

 var MyMixin = {
    foo: function () { ... },
    bar: 5
};
var MyClass = L.Class.extend({
    includes: MyMixin
});
var a = new MyClass();
a.foo();

Вы также можете выполнить такие включения во время выполнения с помощью метода include:

MyClass.include(MyMixin);

statics — это просто свойство для удобства, которое вставляет свойства указанного объекта в качестве статических свойств класса, полезно для определения констант:

var MyClass = L.Class.extend({
    statics: {
        FOO: 'bar',
        BLA: 5
    }
});
MyClass.FOO; // 'bar'

Обработчики конструктора

Если вы разработчик плагина, вам часто нужно добавлять дополнительный код инициализации к существующим классам (например, редактирование обработчиков для L.Polyline). Leaflet предоставляет способ сделать это легко с помощью метода addInitHook:

MyClass.addInitHook(function () {
    // ... do something in constructor additionally
    // e.g. add event listeners, set custom properties etc.
});

Вы также можете использовать следующий сокращённый способ, когда вам нужно только выполнить один дополнительный вызов метода:

MyClass.addInitHook('methodName', arg1, arg2, …);

Функции

Функция Возвращает Описание
extend(<Object> props) Function Расширяет текущий класс с учётом свойств для включения. Возвращает функцию JavaScript, которая является конструктором класса (для вызова с new).
include(<Object> properties) this Включает миксин в текущий класс.
mergeOptions(<Object> options) this Объединяет options в значения по умолчанию класса.
addInitHook(<Function> fn) this Добавляет обработчик конструктора к классу.

События

Набор методов, общих для классов, работающих с событиями (таких как Map и Marker). Обычно события позволяют выполнить некоторую функцию, когда что-то происходит с объектом (например, пользователь нажимает на карту, вызывая событие 'click' на карте).

Пример использования

map.on('click', function(e) {
    alert(e.latlng);
} );

Leaflet работает с обработчиками событий по ссылке, поэтому, если вы хотите добавить обработчик и затем удалить его, определите его как функцию:

function onClick(e) { ... }
map.on('click', onClick);
map.off('click', onClick);

Методы

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определённому типу события объекта. Вы можете необязательно указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Вы также можете передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, она удалит всех обработчиков этого конкретного события от объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off для удаления обработчика.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно предоставить объект данных — первый аргумент функции-обработчика будет содержать его свойства. Событие может быть необязательно распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события есть какие-либо прикреплённые обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родителя события — Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родителя события, чтобы он перестал получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Слой

Набор методов из базового класса Layer, который используют все слои Leaflet. Наследует все методы, опции и события от L.Evented.

Пример использования

var layer = L.Marker(latlng).addTo(map);
layer.addTo(map);
layer.remove();

Опции

Опция Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на слой overlay pane карты. Переопределение этой опции приведет к размещению слоя на другом слое по умолчанию.
attribution String null Строка, отображаемая в элементе управления атрибуцией, описывает данные слоя, например, "© Mapbox".

События

Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map

События всплывающих окон

Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed

События подсказок

Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Классы, расширяющие L.Layer, унаследуют следующие методы:
Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на заданную карту или группу слоёв.

remove() this

Удаляет слой с карты, на которой он сейчас активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий указанный слой на карте. Если name опущено, возвращает слой для этого слоя.

getAttribution() String

Используется элементом управления атрибуцией, возвращает опцию атрибуции.

Методы расширения

Каждый слой должен быть расширен от L.Layer и (повторно) реализовывать следующие методы.
Метод Возвращает Описание
onAdd(<Map> map) this

Должно содержать код, создающий DOM-элементы для слоя, добавляющий их в map panes, где они должны находиться, и устанавливающий обработчики событий карты. Вызывается при map.addLayer(layer).

onRemove(<Map> map) this

Должно содержать весь код очистки, удаляющий элементы слоя из DOM и удаляющий обработчики событий, добавленные ранее в onAdd. Вызывается при map.removeLayer(layer).

getEvents() Object

Этот необязательный метод должен возвращать объект, подобный { viewreset: this._reset }, для addEventListener. Обработчики событий в этом объекте будут автоматически добавляться и удаляться с картой вместе с вашим слоем.

getAttribution() String

Этот необязательный метод должен возвращать строку, содержащую HTML, который отображается на Attribution control, когда слой видимый.

beforeAdd(<Map> map) this

Необязательный метод. Вызывается при map.addLayer(layer), перед добавлением слоя на карту, до инициализации событий, без ожидания, пока карта будет в рабочем состоянии. Используйте только для ранней инициализации.

Методы всплывающей подсказки

Все слои разделяют набор методов, удобных для привязки всплывающей подсказки к ним.
var layer = L.Polygon(latlngs).bindPopup('Hi There!').addTo(map);
layer.openPopup();
layer.closePopup();

Всплывающие подсказки также будут автоматически открываться при нажатии на слой и закрываться, когда слой удаляется с карты или открывается другая всплывающая подсказка.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающую подсказку к слою с переданной content и настраивает необходимые обработчики событий. Если передана Function, она получит слой в качестве первого аргумента и должна вернуть String или HTMLElement.

unbindPopup() this

Удаляет ранее привязанную всплывающую подсказку с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку в указанной latlng или в стандартном якоре всплывающей подсказки, если нет latlng.

closePopup() this

Закрывает всплывающую подсказку, привязанную к этому слою, если она открыта.

togglePopup() this

Открывает или закрывает всплывающую подсказку, привязанную к этому слою, в зависимости от её текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, в данный момент открыта.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getPopup() Popup

Возвращает всплывающую подсказку, привязанную к этому слою.

Методы подсказки

Все слои разделяют набор методов, удобных для привязки подсказок к ним.
var layer = L.Polygon(latlngs).bindTooltip('Hi There!').addTo(map);
layer.openTooltip();
layer.closeTooltip();
Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданной content и настраивает необходимые обработчики событий. Если передана Function, она получит слой в качестве первого аргумента и должна вернуть String или HTMLElement.

unbindTooltip() this

Удаляет ранее привязанную подсказку с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или в стандартном якоре подсказки, если нет latlng.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в данный момент открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определённому типу события объекта. Можно указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Также можно передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, удаляются все обработчики этого события из объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off для удаления обработчика.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Можно дополнительно указать объект данных — свойства этого объекта будут доступны в первом аргументе функции-обработчика. Событие может быть дополнительно распространено на родительские элементы.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события есть привязанные обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз и затем удалён.

addEventParent(<Evented> obj) this

Добавляет родителя события — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родителя события, поэтому он больше не будет получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Интерактивный слой

Некоторые Layer могут быть сделаны интерактивными — когда пользователь взаимодействует с таким слоем, можно обрабатывать события мыши, такие как click и mouseover. Используйте методы обработки событий, чтобы обработать эти события.

Параметры

Параметр Тип Значение по умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет действовать как часть базовой карты.
bubblingMouseEvents Boolean true Если true, событие мыши на этом слое вызовет то же событие на карте (если не используется L.DomEvent.stopPropagation).
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на панель наложения карты. Переопределение этого параметра приведет к размещению слоя на другой панели по умолчанию.
attribution String null Строка, отображаемая в элементе управления атрибутами, описывающая данные слоя, например, "© Mapbox".

События

События мыши

Событие Данные Описание
click MouseEvent Fired when the user clicks (or taps) the layer.
dblclick MouseEvent Fired when the user double-clicks (or double-taps) the layer.
mousedown MouseEvent Fired when the user pushes the mouse button on the layer.
mouseover MouseEvent Fired when the mouse enters the layer.
mouseout MouseEvent Fired when the mouse leaves the layer.
contextmenu MouseEvent Fired when the user right-clicks on the layer, prevents default browser context menu from showing if there are listeners on this event. Also fired on mobile when the user holds a single touch for a second (also called long press).
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на заданную карту или группу слоев.

remove() this

Удаляет слой с карты, на которой он в данный момент активен.

removeFrom(<Map> map) this

Удаляет слой с указанной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий собой названную панель на карте. Если name опущена, возвращает панель для данного слоя.

getAttribution() String

Используется элементом управления атрибутами, возвращает параметр атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Связывает всплывающее окно со слоем с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее связанное с bindPopup.

openPopup(<LatLng> latlng?) this

Открывает связанное всплывающее окно в указанной latlng или по умолчанию, если latlng не указан.

closePopup() this

Закрывает связанное с этим слоем всплывающее окно, если оно открыто.

togglePopup() this

Открывает или закрывает всплывающее окно, связанное с этим слоем, в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если связанное с этим слоем всплывающее окно в настоящее время открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, связанного с этим слоем.

getPopup() Popup

Возвращает всплывающее окно, связанное с этим слоем.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Связывает подсказку со слоем с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее связанную с bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает связанную подсказку в указанной latlng или по умолчанию, если latlng не указан.

closeTooltip() this

Закрывает подсказку, связанную с этим слоем, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, связанную с этим слоем, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если связанная с этим слоем подсказка в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, связанной с этим слоем.

getTooltip() Tooltip

Возвращает подсказку, связанную с этим слоем.

END_OF_DOCUMENT_MARKER ```
Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-слушатель (fn) к определённому типу события объекта. Вы можете необязательно указать контекст слушателя (объект, к которому будет относиться this). Также вы можете передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/слушатель, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-слушатель. Если функция не указана, удаляются все слушатели этого события для объекта. Обратите внимание, что если вы передали пользовательский контекст для on, вы должны передать тот же контекст для off, чтобы удалить слушателя.

off(<Object> eventMap) this

Удаляет набор пар тип/слушатель.

off() this

Удаляет всех слушателей всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно передать объект данных — свойства этого объекта будут содержаться в первом аргументе функции-слушателя. Событие необязательно может быть распространено на родительские элементы.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события есть прикреплённые слушатели.

once(…) this

Ведёт себя как on(…), за исключением того, что слушатель будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительский элемент события — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительский элемент события, так что он перестанет получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Управление

L.Control — базовый класс для реализации элементов управления картой. Обрабатывает позиционирование. Все остальные элементы управления наследуются от этого класса.

Параметры

Параметр Тип Значение по умолчанию Описание
position String 'topright' Позиция элемента управления (один из углов карты). Возможные значения — 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

Классы, наследующие L.Control, унаследуют следующие методы:
Метод Возвращает Описание
getPosition() string

Возвращает позицию элемента управления.

setPosition(<string> position) this

Устанавливает позицию элемента управления.

getContainer() HTMLElement

Возвращает HTMLElement, содержащий элемент управления.

addTo(<Map> map) this

Добавляет элемент управления на заданную карту.

remove() this

Удаляет элемент управления с карты, на которой он сейчас активен.

Методы расширения

Каждый элемент управления должен наследоваться от L.Control и (пере)реализовывать следующие методы.
Метод Возвращает Описание
onAdd(<Map> map) HTMLElement

Должен вернуть контейнерный DOM-элемент для элемента управления и добавить слушатели на соответствующие события карты. Вызывается при control.addTo(map).

onRemove(<Map> map)

Необязательный метод. Должен содержать весь код очистки, который удаляет слушатели, ранее добавленные в onAdd. Вызывается при control.remove().

Обработчик

Абстрактный класс для обработчиков взаимодействия с картой

Методы

Метод Возвращает Описание
enable() this

Включает обработчик

disable() this

Отключает обработчик

enabled() Boolean

Возвращает true, если обработчик включён

Методы расширения

Классы, наследующие от Handler, должны реализовать два следующих метода:
Метод Возвращает Описание
addHooks()

Вызывается при включении обработчика, должен добавить обработчики событий.

removeHooks()

Вызывается при отключении обработчика, должен удалить обработчики событий, добавленные ранее.

Проекция

Объект с методами для проектирования географических координат мира на плоскую поверхность (и обратно). См. Проекция карты.

Методы

Метод Возвращает Описание
project(<LatLng> latlng) Point

Проецирует географические координаты в 2D-точку. Принимает только экземпляры L.LatLng, а не массивы.

unproject(<Point> point) LatLng

Обратный метод project. Проецирует 2D-точку в географическую локацию. Принимает только экземпляры L.Point, а не массивы.

Свойства

Свойство Тип Описание
bounds Bounds The bounds (specified in CRS units) where the projection is valid

Определённые проекции

Leaflet поставляется с набором уже определённых проекций:
Проекция Описание
L.Projection.LonLat Прямоугольная проекция, или проекция Ламберта — самая простая проекция, которую чаще всего используют специалисты по ГИС. Непосредственно отображает x как долготу, а y как широту. Также подходит для плоских миров, например, для карт игр. Используется в CRS EPSG:4326 и Simple.
L.Projection.Mercator Эллиптическая проекция Меркатора — сложнее, чем сферическая Меркатора. Учитывает, что Земля является геоидом, а не идеальной сферой. Используется в EPSG:3395 CRS.
L.Projection.SphericalMercator Сферическая проекция Меркатора — самая распространённая проекция для онлайн-карт, используемая почти всеми бесплатными и коммерческими поставщиками тайлов. Предполагает, что Земля является сферой. Используется в EPSG:3857 CRS.

CRS

Методы

Метод Возвращает Описание
latLngToPoint(<LatLng> latlng, <Number> zoom) Point

Проецирует географические координаты в пиксельные координаты для заданного уровня масштабирования.

pointToLatLng(<Point> point, <Number> zoom) LatLng

Обратная функция к latLngToPoint. Проецирует пиксельные координаты на заданном уровне масштабирования в географические координаты.

project(<LatLng> latlng) Point

Проецирует географические координаты в координаты в единицах, принятых для этого CRS (например, метры для EPSG:3857, для передачи в службы WMS).

unproject(<Point> point) LatLng

На основе проецированных координат возвращает соответствующие координаты LatLng. Обратная функция к project.

scale(<Number> zoom) Number

Возвращает масштаб, используемый при преобразовании проецированных координат в пиксельные координаты для конкретного уровня масштабирования. Например, возвращает 256 * 2^zoom для CRS на основе Меркатора.

zoom(<Number> scale) Number

Обратная функция к scale(), возвращает уровень масштабирования, соответствующий коэффициенту масштаба scale.

getProjectedBounds(<Number> zoom) Bounds

Возвращает границы проекции, масштабированные и преобразованные для предоставленного zoom.

distance(<LatLng> latlng1, <LatLng> latlng2) Number

Возвращает расстояние между двумя географическими координатами.

wrapLatLng(<LatLng> latlng) LatLng

Возвращает LatLng, где широта и долгота были обернуты в соответствии с wrapLat и wrapLng свойствами CRS, если они находятся за пределами границ CRS.

wrapLatLngBounds(<LatLngBounds> bounds) LatLngBounds

Возвращает LatLngBounds с таким же размером, что и заданный, гарантируя, что его центр находится в границах CRS. Принимает только экземпляры L.LatLngBounds, а не массивы.

Свойства

Свойство Тип Описание
code String Standard code name of the CRS passed into WMS services (e.g. 'EPSG:3857')
wrapLng Number[] An array of two numbers defining whether the longitude (horizontal) coordinate axis wraps around a given range and how. Defaults to [-180, 180] in most geographical CRSs. If undefined, the longitude axis does not wrap around.
wrapLat Number[] Like wrapLng, but for the latitude (vertical) axis.
infinite Boolean If true, the coordinate space will be unbounded (infinite in both axes)

Определённые CRS

CRS Описание
L.CRS.EPSG3395 Редко используется некоторыми коммерческими поставщиками тайлов. Использует эллиптическую проекцию Меркатора.
L.CRS.EPSG3857 Наиболее распространённый CRS для онлайн-карт, используемый почти всеми бесплатными и коммерческими поставщиками тайлов. Использует сферическую проекцию Меркатора. Устанавливается по умолчанию в опции crs карты.
L.CRS.EPSG4326 Распространённый CRS среди специалистов по ГИС. Использует простую прямоугольную проекцию. Leaflet 1.0.x соответствует TMS-схеме координат для EPSG:4326, что является изменением поведения по сравнению с 0.7.x. Если вы используете TileLayer с этим CRS, убедитесь, что два тайла размером 256x256 пикселей покрывают всю Землю на уровне масштабирования ноль, и что начало координат тайла находится в (-180,+90) или (-180,-90) для TileLayer с опцией tms.
L.CRS.Earth Служит основой для CRS, которые являются глобальными и покрывают всю Землю. Может использоваться только в качестве основы для других CRS и не может использоваться напрямую, так как не имеет code, projection или transformation. distance() возвращает значения в метрах.
L.CRS.Simple Простой CRS, который отображает долготу и широту непосредственно в x и y. Может использоваться для карт плоских поверхностей (например, карт игр). Обратите внимание, что ось y всё равно должна быть инвертирована (от нижней части к верхней). distance() возвращает простое евклидово расстояние.
L.CRS.Base Объект, определяющий системы координат для проекции географических точек в пиксельные (экранные) координаты и обратно (и в координаты в других единицах для сервисов WMS). См. пространственную систему отсчета. Leaflet определяет наиболее распространённые CRS по умолчанию. Если вы хотите использовать CRS, не определённый по умолчанию, ознакомьтесь с плагином Proj4Leaflet.

Рендерер

Базовый класс для реализации векторных рендереров (SVG, Canvas). Обрабатывает контейнер DOM рендерера, его границы и анимацию масштабирования. Renderer работает как неявная группа слоёв для всех Path - сам рендерер может быть добавлен или удалён на карту. Все пути используют рендерер, который может быть неявным (карта определит тип рендерера и автоматически его использует) или явным (используя опцию renderer пути). Не используйте этот класс напрямую, используйте SVG и Canvas вместо него.

Параметры

Параметр Тип Значение по умолчанию Описание
padding Number 0.1 Насколько нужно расширить область обрезки вокруг представления карты (относительно её размера), например, 0,1 — это 10% представления карты в каждом направлении.
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на слой поверхности карты. Переопределение этого параметра разместит слой на другом слое по умолчанию.
attribution String null Строка, отображаемая в элементе управления атрибутами, описывающая данные слоя, например, «© Mapbox».

События

Событие Данные Описание
update Event Fired when the renderer updates its bounds, center and zoom, for example when its map has moved
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой к заданной карте или группе слоёв.

remove() this

Удаляет слой с активной карты.

removeFrom(<Map> map) this

Удаляет слой с данной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий названный слой на карте. Если name опущен, возвращает слой для этого слоя.

getAttribution() String

Используется элементом управления атрибутами, возвращает параметр атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающее окно к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее привязанное с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанное всплывающее окно в указанной latlng или по умолчанию в якорной точке всплывающего окна, если не передан latlng.

closePopup() this

Закрывает всплывающее окно, привязанное к этому слою, если оно открыто.

togglePopup() this

Открывает или закрывает всплывающее окно, привязанное к этому слою, в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающее окно, привязанное к этому слою, в настоящее время открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, привязанного к этому слою.

getPopup() Popup

Возвращает всплывающее окно, привязанное к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или по умолчанию в якорной точке подсказки, если не передан latlng.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от ее текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определенному типу события объекта. Вы можете необязательно указать контекст обработчика (объект, к которому будет относиться this). Вы также можете передать несколько типов, разделенных пробелом (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, она удалит всех обработчиков этого конкретного события из объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off для удаления обработчика.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно предоставить объект данных — первый аргумент функции-обработчика будет содержать его свойства. Событие необязательно может быть распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определенного типа события есть какие-либо присоединенные обработчики.

once(…) this

Поведение аналогично on(…), за исключением того, что обработчик будет вызван только один раз, а затем удален.

addEventParent(<Evented> obj) this

Добавляет родительский элемент события — Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родительский элемент события, так что он перестанет получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Объекты событий

Всякий раз, когда класс, унаследованный от Evented, вызывает событие, функция-обработчик будет вызвана с аргументом события, который является простым объектом, содержащим информацию о событии. Например:

map.on('click', function(ev) {
    alert(ev.latlng); // ev is an event object (MouseEvent in this case)
});

Доступная информация зависит от типа события:

Событие

Базовый объект события. Все остальные объекты событий также содержат эти свойства.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

KeyboardEvent

Свойство Тип Описание
originalEvent DOMEvent The original DOM KeyboardEvent that triggered this Leaflet event.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

MouseEvent

Свойство Тип Описание
latlng LatLng The geographical point where the mouse event occured.
layerPoint Point Pixel coordinates of the point where the mouse event occured relative to the map layer.
containerPoint Point Pixel coordinates of the point where the mouse event occured relative to the map сontainer.
originalEvent DOMEvent The original DOM MouseEvent or DOM TouchEvent that triggered this Leaflet event.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

LocationEvent

Свойство Тип Описание
latlng LatLng Detected geographical location of the user.
bounds LatLngBounds Geographical bounds of the area user is located in (with respect to the accuracy of location).
accuracy Number Accuracy of location in meters.
altitude Number Height of the position above the WGS84 ellipsoid in meters.
altitudeAccuracy Number Accuracy of altitude in meters.
heading Number The direction of travel in degrees counting clockwise from true North.
speed Number Current velocity in meters per second.
timestamp Number The time when the position was acquired.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

ErrorEvent

Свойство Тип Описание
message String Error message.
code Number Error code (if applicable).
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

LayerEvent

Свойство Тип Описание
layer Layer The layer that was added or removed.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

LayersControlEvent

Свойство Тип Описание
layer Layer The layer that was added or removed.
name String The name of the layer that was added or removed.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

TileEvent

Свойство Тип Описание
tile HTMLElement The tile element (image).
coords Point Point object with the tile's x, y, and z (zoom level) coordinates.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

TileErrorEvent

Свойство Тип Описание
tile HTMLElement The tile element (image).
coords Point Point object with the tile's x, y, and z (zoom level) coordinates.
error * Error passed to the tile's done() callback.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

ResizeEvent

Свойство Тип Описание
oldSize Point The old size before resize event.
newSize Point The new size after the resize event.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

GeoJSONEvent

Свойство Тип Описание
layer Layer The layer for the GeoJSON feature that is being added to the map.
properties Object GeoJSON properties of the feature.
geometryType String GeoJSON geometry type of the feature.
id String GeoJSON ID of the feature (if present).
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

PopupEvent

Свойство Тип Описание
popup Popup The popup that was opened or closed.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

TooltipEvent

Свойство Тип Описание
tooltip Tooltip The tooltip that was opened or closed.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

DragEndEvent

Свойство Тип Описание
distance Number The distance in pixels the draggable element was moved by.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

ZoomAnimEvent

Свойство Тип Описание
center LatLng The current center of the map
zoom Number The current zoom level of the map
noUpdate Boolean Whether layers should update their contents due to this event
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

DivOverlay

Базовая модель для L.Popup и L.Tooltip. Наследуйте от неё для создания пользовательских всплывающих окон (подобных плагинам).

Параметры

Параметр Тип Значение по умолчанию Описание
offset Point Point(0, 7) Смещение позиции всплывающего окна. Полезно для управления якорем всплывающего окна при открытии над некоторыми слоями.
className String '' Настраиваемое имя класса CSS для назначения всплывающему окну.
pane String 'popupPane' Map pane куда будет добавлено всплывающее окно.
Параметр Тип Значение по умолчанию Описание
attribution String null Строка, отображаемая в блоке авторских прав, описывает данные слоя, например "© Mapbox".

События

Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращаемое значение Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой в заданную карту или группу слоев.

remove() this

Удаляет слой с карты, на которой он в данный момент активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий именованный слой на карте. Если name опущено, возвращает слой для этого слоя.

getAttribution() String

Используется attribution control, возвращает параметр авторских прав.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающее окно к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее привязанное с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанное всплывающее окно в указанной latlng или по умолчанию, если не передан latlng.

closePopup() this

Закрывает всплывающее окно, привязанное к этому слою, если оно открыто.

togglePopup() this

Открывает или закрывает всплывающее окно, привязанное к этому слою, в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающее окно, привязанное к этому слою, в настоящее время открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, привязанного к этому слою.

getPopup() Popup

Возвращает всплывающее окно, привязанное к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или по умолчанию, если не передан latlng.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от ее текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определенному типу события объекта. Вы можете необязательно указать контекст обработчика (объект, на который будет указывать this). Вы также можете передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, она удалит всех обработчиков этого конкретного события из объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет всех обработчиков всех событий в объекте.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно предоставить объект данных — первый аргумент функции-обработчика будет содержать его свойства. Событие может быть необязательно распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если у определенного типа события есть прикрепленные обработчики.

once(…) this

Ведет себя как on(…), за исключением того, что обработчик будет запущен только один раз, а затем удален.

addEventParent(<Evented> obj) this

Добавляет родительское событие — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительское событие, чтобы оно перестало получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Глобальные переключатели

Глобальные переключатели созданы для редких случаев и, как правило, заставляют Leaflet не определять определенную функцию браузера, даже если она есть. Вам нужно установить переключатель как глобальную переменную в true до включения Leaflet на странице, как показано ниже:

<script>L_NO_TOUCH = true;</script>
<script src="leaflet.js"></script>
Переключатель Описание
L_NO_TOUCH Принудительно заставляет Leaflet не использовать сенсорные события, даже если они определены.
L_DISABLE_3D Принудительно заставляет Leaflet не использовать ускоренные графикой CSS 3D преобразования для позиционирования (что может вызывать сбои в некоторых редких средах), даже если они поддерживаются.

noConflict

Этот метод восстанавливает глобальную переменную L до первоначального значения, которое она имела до включения Leaflet, и возвращает фактическое пространство имен Leaflet, чтобы вы могли поместить его в другое место, как показано ниже:

<script src='libs/l.js'>
<!-- L points to some other library -->
<script src='leaflet.js'>
<!-- you include Leaflet, it replaces the L variable to Leaflet namespace -->
<script>
var Leaflet = L.noConflict();
// now L points to that other library again, and you can use Leaflet.Map etc.
</script>

версия

Константа, представляющая используемую версию Leaflet.

L.version; // contains "1.0.0" (or whatever version is currently in use)

© 2010–2018 Vladimir Agafonkin
© 2010–2011, CloudMade
Maps © OpenStreetMap contributors.
https://leafletjs.com/reference-1.2.0.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API