Spec-Zone.ru › Leaflet 1.1

Справочник API

Карта

Центральный класс 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 Система координат (CRS) для использования. Не меняйте, если не уверены, что это значит.
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. Каждая карта имеет следующие стандартные слои, которые различаются только z-индексом.
Слой Тип 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?) Создаёт объект Маркер, принимая географическую точку и необязательно объект опций.

Опции

Опция Тип Значение по умолчанию Описание
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).

getLatLng() LatLng

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

setLatLng(<LatLng> latlng) this

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

setZIndexOffset(<Number> offset) this

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

setIcon(<Icon> icon) this

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

setOpacity(<Number> opacity) this

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

Метод Возвращает Описание
addTo(<Map> 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> 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> 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(…)

Слои плиток

Используется для загрузки и отображения слоёв плиток на карте. Расширяет 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'

Вы можете использовать пользовательские ключи в шаблоне, которые будут оцениваться из параметров 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 Если false, новые плитки загружаются во время панорамирования, в противном случае только после него (для лучшей производительности). По умолчанию включено в мобильных браузерах, в противном случае false.
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, слой сетки будет отображаться только один раз на низких уровнях масштабирования. Не имеет эффекта, когда система координат карты (map CRS) не обернута. Может использоваться в сочетании с 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> 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, по умолчанию используется CRS карты. Не меняйте это, если не уверены, что это означает.
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, новые тайлы загружаются во время перемещения, иначе только после него (для лучшей производительности). true по умолчанию в мобильных браузерах, иначе false.
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 будет отображаться только один раз на низких уровнях масштабирования. Не имеет эффекта, когда система координат карты (map CRS) не обернута. Может быть использовано в сочетании с 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.

Методы TileLayer.WMS

Метод Возвращает Описание
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-изображения с соответствующим 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> 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> 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(…)

VideoOverlay

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

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

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

Создание

Фабрика Описание
L.videoOverlay(<String|Array> videoUrl, <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> 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(…)

Путь

Абстрактный класс, содержащий опции и константы, общие для векторных наложений (Многоугольник, Полилиния, Круг). Не используйте его напрямую. Расширяет 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 options.

bringToFront() this

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

bringToBack() this

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

Метод Возвращает Описание
addTo(<Map> 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.

Методы TooltipEvent

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

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

getLatLngs() LatLng[]

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

setLatLngs(<LatLng[]> latlngs) this

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

isEmpty() Boolean

Возвращает true, если у Polyline нет 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> 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(…)

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

Класс для рисования многоугольных наложений на карте. Расширяет 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
];

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

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, если у полилинии нет координат.

getCenter() LatLng

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

getBounds() LatLngBounds

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

addLatLng(<LatLng> latlng) this

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

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

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

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

Метод Возвращаемое значение Описание
addTo(<Map> 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(…)

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

Класс для рисования прямоугольных наложений на карте. Расширяет 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.

Методы rectangle

Метод Возвращает Описание
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> 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(…)

Circle

Класс для рисования круговых наложений на карте. Расширяет 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 Feature).

setLatLng(<LatLng> latLng) this

Устанавливает положение маркера круга в новом месте.

getLatLng() LatLng

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

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

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

setStyle(<Path options> style) this

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

bringToFront() this

Перемещает слой в самый верхний слой всех слоёв пути.

bringToBack() this

Перемещает слой в самый нижний слой всех слоёв пути.

Метод Возвращает Описание
addTo(<Map> 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(…)

CircleMarker

Круг фиксированного размера с радиусом, заданным в пикселях. Расширяет Path.

CircleMarker-создание

Фабрика Описание
L.circleMarker(<LatLng> latlng, <CircleMarker options> options?) Создаёт объект маркера круга, задавая географическую точку и необязательный объект опций.

CircleMarker-опции

Опция Тип Значение по умолчанию Описание
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
Событие Данные Описание
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

Перемещает слой в верхний слой всех слоев Path.

bringToBack() this

Перемещает слой в нижний слой всех слоев Path.

Метод Возвращает Описание
addTo(<Map> 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(…)

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> 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.SVG:
Функция Возвращает Описание
create(<String> name) SVGElement Возвращает экземпляр SVGElement, соответствующий переданному имени класса. Например, использование 'line' вернёт экземпляр SVGLineElement.
pointsToPath(<Point[]> rings, <Boolean> closed) String Генерирует строку SVG path для нескольких колец, каждое из которых преобразуется в инструкции "M..L..L..".

Canvas

Разрешает отображать векторные слои с помощью <canvas>. Наследует Renderer. Из-за технических ограничений, Canvas недоступен во всех веб-браузерах, в частности в IE8, а перекрывающиеся геометрии могут не отображаться должным образом в некоторых особых случаях.

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

Использование Canvas по умолчанию для всех путей на карте:

var map = L.map('map', {
    renderer: L.canvas()
});

Использование 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?) Создаёт 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> 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(…)

Группа слоёв

Используется для группировки нескольких слоёв и обработки их как одного. Если добавить его на карту, все слои, добавленные или удалённые из группы, также будут добавлены/удалены на карте. Расширяет Layer.

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

L.layerGroup([marker1, marker2])
    .addLayer(polyline)
    .addTo(map);

Создание

Фабрика Описание
L.layerGroup(<Layer[]> layers) Создаёт группу слоёв, при необходимости с начальным набором слоёв.

Опции

Опция Тип Значение по умолчанию Описание
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.

Методы

Метод Возвращаемое значение Описание
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> map) this

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

Метод Возвращаемое значение Описание
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 Group (созданный из границ и координат ее дочерних элементов).

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

Возвращает представление группы слоев в формате GeoJSON (как GeoJSON FeatureCollection, GeometryCollection или MultiPoint).

addLayer(<Layer> layer) this

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

removeLayer(<Layer> layer) this

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

removeLayer(<Number> id) this

Удаляет слой с заданным внутренним ID из группы.

hasLayer(<Layer> layer) Boolean

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

hasLayer(<Number> id) Boolean

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

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

Возвращает слой с заданным внутренним ID.

getLayers() Layer[]

Возвращает массив всех слоев, добавленных в группу.

setZIndex(<Number> zIndex) this

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

getLayerId(<Layer> layer) Number

Возвращает внутренний ID слоя.

Метод Возвращает Описание
addTo(<Map> 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(…)

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

Удаляет слой с заданным внутренним ID из группы.

hasLayer(<Layer> layer) Boolean

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

hasLayer(<Number> id) Boolean

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

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

Возвращает слой с заданным внутренним ID.

getLayers() Layer[]

Возвращает массив всех добавленных в группу слоёв.

setZIndex(<Number> zIndex) this

Вызывает setZIndex для каждого слоя, содержащегося в этой группе, передавая z-индекс.

getLayerId(<Layer> layer) Number

Возвращает внутренний ID слоя.

Метод Возвращаемое значение Описание
addTo(<Map> 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.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, новые тайлы загружаются во время панорамирования, в противном случае только после него (для лучшей производительности). По умолчанию true в мобильных браузерах, в противном случае false.
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 будет отображаться только один раз при низких уровнях масштабирования. Не оказывает влияния, если система координат карты (map CRS) не обертывается. Может использоваться в сочетании с 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.

Методы

Метод Возвращает Описание
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> map) this

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

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(…)

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.

Methods

Method Returns Description
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, если область инициализирована корректно.

Point

Представляет точку с координатами 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

Bounds

Представляет прямоугольную область в координатах пикселей.

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

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 и тени.

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

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, но для тени под ним.

Управление масштабом

Базовое управление масштабом с двумя кнопками (приблизить и отдалить). По умолчанию размещается на карте, если не установить опцию 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

Удаляет управление с карты.

Управление атрибуцией

Управление атрибуцией позволяет отображать данные об авторских правах в небольшом текстовом поле на карте. По умолчанию размещается на карте, если не установить опцию attributionControl в значение false, и автоматически получает тексты атрибуции из слоёв с помощью метода getAttribution. Расширяет Управление.

Создание

Фабрика Описание
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.

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

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?) Создаёт управление атрибуцией с указанными слоями. Базовые слои будут переключаться с помощью радиокнопок, а наложения — с помощью флажков. Обратите внимание, что все базовые слои должны быть переданы в объекте базовых слоёв, но только один должен быть добавлен на карту при инициализации карты.

Опции

Опция Тип По умолчанию Описание
collapsed Boolean true Если true, управление будет свернуто в значок и развернуто при наведении курсора или касании.
autoZIndex Boolean true Если true, управление присвоит zIndexes в порядке возрастания всем своим слоям, чтобы порядок сохранялся при включении/выключении.
hideSingleBase Boolean false Если true, базовые слои в управлении будут скрыты, если их только один.
sortLayers Boolean false Сортировать ли слои. Если false, слои сохранят порядок, в котором были добавлены в управление.
sortFunction Function * Функция сравнения compare 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 для отображения только точек полилинии, которые находятся на экране или рядом, что повышает производительность.

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 Возвращает элемент по его 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-трансляцию или позиционирование 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-переходы для современных браузеров и таймер в качестве резервного варианта для 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 по умолчанию) и коэффициент линейности плавности (3-й аргумент кривой кубического безиера, 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(…)

Перетаскиваемый

Класс для создания перетаскиваемых элементов DOM (включая поддержку сенсорного ввода). Используется внутри для перетаскивания карты и маркеров. Работает только с элементами, которые были позиционированы с помощью L.DomUtil.setPosition.

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

var draggable = new L.Draggable(elementToDrag);
draggable.enable();

Конструктор

Конструктор Описание
L.Draggable(<HTMLElement> el, <HTMLElement> dragHandle?, <Boolean> preventOutline?, <Draggable options> options?) Создаёт объект Draggable для перемещения el при начальном перетаскивании элемента dragHandle (по умолчанию равен самому элементу el).

Параметры

Параметр Тип Значение по умолчанию Описание
clickTolerance Number 3 Максимальное количество пикселей, на которое пользователь может сдвинуть указатель мыши во время нажатия, чтобы это считалось действительным нажатием (в отличие от перетаскивания мышью).

События

Событие Данные Описание
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.

Методы

Метод Возвращает Описание
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, описанных здесь. В дополнение к реализации простой модели наследования, он вводит несколько специальных свойств для удобной организации кода — параметры, включения и статические свойства.

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

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 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

Также есть 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' По умолчанию слой будет добавлен в панель наложения карты. Переопределение этой опции приведет к тому, что слой по умолчанию будет размещен на другой панели.
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> map) this

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

Методы расширения

Каждый слой должен расширяться от 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> 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.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 Прямоугольная или Plate Carrée проекция — самая простая проекция, которую в основном используют специалисты по ГИС. Прямо отображает x как долготу, и y как широту. Также подходит для плоских миров, например, для карт игр. Используется CRS EPSG:4326 и Simple.
L.Projection.Mercator Эллиптическая Меркаторская проекция — более сложная, чем сферическая Меркаторская. Учитывает, что Земля — это геоид, а не идеальная сфера. Используется EPSG:3395 CRS.
L.Projection.SphericalMercator Сферическая Меркаторская проекция — самая распространённая проекция для онлайн-карт, используемая почти всеми бесплатными и коммерческими поставщиками плиток. Предполагает, что Земля — сфера. Используется CRS EPSG:3857.

CRS

Методы

Метод Возвращает Описание
latLngToPoint(<LatLng> latlng, <Number> zoom) Point

Проецирует географические координаты в пиксельные координаты для заданного уровня масштабирования.

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

Обратная функция к latLngToPoint. Проецирует пиксельные координаты на заданном уровне масштабирования в географические координаты.

project(<LatLng> latlng) Point

Проецирует географические координаты в координаты в единицах, принятых для данной системы координат (например, метры для EPSG:3857, для передачи в сервисы WMS).

unproject(<Point> point) LatLng

Принимая проецированные координаты, возвращает соответствующие LatLng. Обратная функция к project.

scale(<Number> zoom) Number

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

zoom(<Number> scale) Number

Обратная функция к scale(), возвращает уровень масштабирования, соответствующий коэффициенту масштаба scale.

getProjectedBounds(<Number> zoom) Bounds

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

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

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

wrapLatLng(<LatLng> latlng) LatLng

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

wrapLatLngBounds(<LatLngBounds> bounds) LatLngBounds

Возвращает LatLngBounds с тем же размером, что и заданный, гарантируя, что его центр находится в пределах границ системы координат. Принимает только реальные экземпляры 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)

Определенные системы координат

Система координат Описание
L.CRS.EPSG3395 Редко используется некоторыми коммерческими поставщиками тайлов. Использует эллиптическую проекцию Меркатора.
L.CRS.EPSG3857 Наиболее распространенная система координат для онлайн-карт, используемая практически всеми бесплатными и коммерческими поставщиками тайлов. Использует сферическую проекцию Меркатора. Устанавливается по умолчанию в опции crs карты.
L.CRS.EPSG4326 Распространенная система координат среди специалистов по ГИС. Использует простую равнопрямоугольную проекцию. Leaflet 1.0.x соответствует схеме координат TMS для EPSG:4326, что является изменением в поведении по сравнению с 0.7.x. Если вы используете TileLayer с этой системой координат, убедитесь, что есть две плитки размером 256x256 пикселей, покрывающие всю Землю на уровне масштаба ноль, и что начало координат плитки составляет (-180,+90), или (-180,-90) для TileLayer с опцией tms.
L.CRS.Earth Служит основой для систем координат, которые являются глобальными, так что они покрывают Землю. Может использоваться только как основа для других систем координат и не может использоваться напрямую, так как у нее нет code, projection или transformation. distance() возвращает метры.
L.CRS.Simple Простая система координат, которая отображает долготу и широту в x и y напрямую. Может использоваться для карт плоских поверхностей (например, игровых карт). Обратите внимание, что ось y все еще должна быть инвертирована (от нижней части к верхней). distance() возвращает простое евклидово расстояние.
L.CRS.Base Объект, определяющий системы координат для проецирования географических точек в пиксельные (экранные) координаты и обратно (и в координаты в других единицах для сервисов WMS). См. пространственная система отсчета. Leaflet по умолчанию определяет наиболее распространенные системы координат. Если вы хотите использовать систему координат, не определенную по умолчанию, ознакомьтесь с плагином 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> 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(…)

Объекты событий

Всякий раз, когда класс, унаследованный от 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> map) this

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

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(…)

Глобальные переключатели

Глобальные переключатели созданы для редких случаев и, как правило, заставляют Leaflet не определять определенную функцию браузера, даже если она есть. Вам нужно установить переключатель как глобальную переменную в true перед включением Leaflet на странице, как показано ниже:

<script>L_NO_TOUCH = true;</script>
<script src="leaflet.js"></script>
Переключатель Описание
L_NO_TOUCH Заставляет Leaflet не использовать события touch, даже если они определены.
L_DISABLE_3D Заставляет Leaflet не использовать ускоренные 3D-трансформации CSS для позиционирования (что может вызвать ошибки в некоторых редких средах), даже если они поддерживаются.

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.1.0.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API