Spec-Zone.ru › Leaflet 1.8

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

Карта

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

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

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

Создание

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

Параметры

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

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

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

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

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

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

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

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

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

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

Параметр Тип Значение по умолчанию Описание
inertia Boolean * При включении перемещение карты будет иметь эффект инерции, где карта накапливает импульс во время перетаскивания и продолжает движение в том же направлении некоторое время. Особенно удобно на сенсорных устройствах. Включено по умолчанию.
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) означает изменение одного полного уровня масштабирования. Более низкие значения ускорят масштабирование с помощью колесика (и наоборот).

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

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

События

События слоя

Событие Данные Описание
baselayerchange LayersControlEvent Срабатывает при изменении базового слоя через панель управления слоями.
overlayadd LayersControlEvent Срабатывает при выборе наложения через панель управления слоями.
overlayremove LayersControlEvent Срабатывает при удалении наложения через панель управления слоями.
layeradd LayerEvent Срабатывает при добавлении нового слоя на карту.
layerremove LayerEvent Срабатывает при удалении слоя с карты.

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

Событие Данные Описание
zoomlevelschange Event Срабатывает при изменении количества уровней масштабирования на карте из-за добавления или удаления слоя.
resize ResizeEvent Срабатывает при изменении размера карты.
unload Event Срабатывает при уничтожении карты методом remove.
viewreset Event Срабатывает, когда карта должна перерисовать свое содержимое (обычно происходит при изменении масштаба карты или при загрузке). Очень полезно для создания пользовательских наложений.
load Event Срабатывает при инициализации карты (когда ее центр и масштаб устанавливаются в первый раз).
zoomstart Event Срабатывает, когда масштабирование карты собирается измениться (например, перед анимацией масштабирования).
movestart Event Срабатывает, когда начинает меняться представление карты (например, пользователь начинает перетаскивать карту).
zoom Event Срабатывает многократно во время любого изменения уровня масштабирования, включая анимации масштабирования и перелёта.
move Event Срабатывает многократно во время любого перемещения карты, включая перемещение и анимации перелёта.
zoomend Event Срабатывает, когда масштаб карты изменился после любой анимации.
moveend Event Срабатывает, когда центр карты перестаёт меняться (например, пользователь перестал перетаскивать карту или после масштабирования, не центрированного на карту).

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

Событие Данные Описание
popupopen PopupEvent Срабатывает при открытии всплывающего окна на карте.
popupclose PopupEvent Срабатывает при закрытии всплывающего окна на карте.
autopanstart Event Срабатывает, когда карта начинает автоматическое перемещение при открытии всплывающего окна.

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

Событие Данные Описание
tooltipopen TooltipEvent Срабатывает при открытии всплывающей подсказки на карте.
tooltipclose TooltipEvent Срабатывает при закрытии всплывающей подсказки на карте.

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

Событие Данные Описание
locationerror ErrorEvent Срабатывает, когда геолокация (с использованием метода locate) завершилась неудачно.
locationfound LocationEvent Срабатывает, когда геолокация (с использованием метода locate) прошла успешно.

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

Событие Данные Описание
click MouseEvent Срабатывает при нажатии пользователем на карту.
dblclick MouseEvent Срабатывает при двойном нажатии пользователем на карту.
mousedown MouseEvent Срабатывает при нажатии пользователем кнопки мыши на карте.
mouseup MouseEvent Срабатывает при отпускании пользователем кнопки мыши на карте.
mouseover MouseEvent Срабатывает при входе курсора на карту.
mouseout MouseEvent Срабатывает при выходе курсора с карты.
mousemove MouseEvent Срабатывает во время перемещения курсора над картой.
contextmenu MouseEvent Срабатывает при нажатии правой кнопкой мыши на карте, предотвращает отображение контекстного меню браузера по умолчанию, если есть обработчики этого события. Также срабатывает на мобильных устройствах, когда пользователь удерживает одно касание в течение секунды (также называется длительным нажатием).
keypress KeyboardEvent Срабатывает, когда пользователь нажимает клавишу с клавиатуры, которая генерирует значение символа, в то время как карта имеет фокус.
keydown KeyboardEvent Срабатывает, когда пользователь нажимает клавишу на клавиатуре, в то время как карта имеет фокус. В отличие от события keypress, событие keydown срабатывает для клавиш, которые генерируют значение символа, и для клавиш, которые не генерируют значение символа.
keyup KeyboardEvent Срабатывает, когда пользователь отпускает клавишу на клавиатуре, в то время как карта имеет фокус.
preclick MouseEvent Срабатывает перед нажатием на карту мышью (иногда полезно, когда нужно что-то сделать при нажатии до того, как начнут выполняться существующие обработчики нажатия).

Прочие события

Событие Данные Описание
zoomanim ZoomAnimEvent Срабатывает как минимум один раз за анимацию масштабирования. При непрерывном масштабировании, как при масштабировании пинцетом, срабатывает один раз за кадр во время масштабирования.

Методы

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

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

setMinZoom(<Number> zoom) this

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

setMaxZoom(<Number> zoom) this

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

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

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

panInside(<LatLng> latlng, <padding options> options?) this

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

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?, <Point> padding?) 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> propagate?) Boolean

Возвращает true , если для определённого типа события есть какие-либо присоединённые слушатели. Проверка может быть необязательно распространена, она вернёт 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(…)

Свойства

Управление

Свойство Тип Описание
zoomControl Control.Zoom Управление масштабом по умолчанию (доступно только если опция zoomControl была true при создании карты).

Обработчики

Свойство Тип Описание
boxZoom Handler Обработчик масштабирования прямоугольником (удерживайте Shift и перетаскивайте мышью).
doubleClickZoom Handler Обработчик масштабирования двойным щелчком.
dragging Handler Обработчик перетаскивания карты (как мышкой, так и касанием).
keyboard Handler Обработчик навигации с клавиатуры.
scrollWheelZoom Handler Обработчик масштабирования колесиком мыши.
tapHold Handler Обработчик удерживания касания для имитации события contextmenu (полезно в мобильном Safari).
touchZoom Handler Обработчик масштабирования касанием.

Плани

Планы — это DOM-элементы, используемые для управления порядком слоев на карте. Вы можете получить доступ к планам с помощью методов map.getPane или map.getPanes. Новые планы можно создать с помощью метода map.createPane.

Каждая карта имеет следующие стандартные планы, отличающиеся только z-индексом.

План Тип Z-индекс Описание
mapPane HTMLElement 'auto' План, содержащий все остальные планы карты
tilePane HTMLElement 200 План для GridLayer и TileLayer
overlayPane HTMLElement 400 План для векторов (Path, таких как Polyline и Polygon), ImageOverlay и VideoOverlay
shadowPane HTMLElement 500 План для теней наложения (например, тени Marker)
markerPane HTMLElement 600 План для Icon значков Marker
tooltipPane HTMLElement 650 План для Tooltip.
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 не будет срабатывать при начале панорамирования (используется внутри для инерции панорамирования).

Параметры отступа

Параметр Тип Значение по умолчанию Описание
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 при запуске (используется внутри для инерции перемещения).
Опция Тип Значение по умолчанию Описание
paddingTopLeft Point [0, 0] Устанавливает размер отступа в верхнем левом углу контейнера карты, который не учитывается при установке представления для соответствия границам. Полезно, если на карте есть элементы управления, такие как боковая панель, и вы не хотите, чтобы они скрывали объекты, к которым вы приближаетесь.
paddingBottomRight Point [0, 0] Аналогично для нижнего правого угла карты.
padding Point [0, 0] Эквивалентно установке отступов сверху слева и снизу справа к одному и тому же значению.

Маркер

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

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

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

Создание

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

Опции

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

Опции перетаскиваемого маркера

Опция Тип Значение по умолчанию Описание
draggable Boolean false Можно ли перетаскивать маркер с помощью мыши/тачскрина или нет.
autoPan Boolean false Перемещать карту при перетаскивании маркера около края или нет.
autoPanPadding Point Point(50, 50) Расстояние (в пикселях влево/вправо и вверх/вниз) до края карты для начала перемещения карты.
autoPanSpeed Number 10 Количество пикселей, на которое должна перемещаться карта.
Опция Тип Значение по умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет работать как часть базовой карты.
Опция Тип Значение по умолчанию Описание
attribution String null Строка, отображаемая в элементе управления подписями, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридическим обязательством перед правообладателями и поставщиками тайлов.

События

Событие Данные Описание
move Event Вызывается, когда маркер перемещается с помощью setLatLng или путем перетаскивания. Старые и новые координаты включены в аргументы события как oldLatLng, latlng.

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

Событие Данные Описание
dragstart Event Вызывается, когда пользователь начинает перетаскивать маркер.
movestart Event Вызывается, когда маркер начинает перемещаться (из-за перетаскивания).
drag Event Вызывается многократно во время перетаскивания маркера пользователем.
dragend DragEndEvent Вызывается, когда пользователь прекращает перетаскивание маркера.
moveend Event Вызывается, когда маркер прекращает перемещаться (из-за перетаскивания).
Событие Данные Описание
click MouseEvent Срабатывает при щелчке (или нажатии) пользователем на слой.
dblclick MouseEvent Срабатывает при двойном щелчке (или двойном нажатии) пользователем на слой.
mousedown MouseEvent Срабатывает, когда пользователь нажимает кнопку мыши на слое.
mouseup MouseEvent Срабатывает, когда пользователь отпускает нажатую кнопку мыши на слое.
mouseover MouseEvent Срабатывает, когда курсор мыши попадает на слой.
mouseout MouseEvent Срабатывает, когда курсор мыши покидает слой.
contextmenu MouseEvent Срабатывает, когда пользователь щелкает правой кнопкой мыши на слое. Предотвращает отображение контекстного меню браузера по умолчанию, если есть обработчики на этом событии. Также срабатывает на мобильных устройствах, когда пользователь удерживает одно касание в течение секунды (также называется удержанием).
Событие Данные Описание
add Event Срабатывает после добавления слоя на карту.
remove Event Срабатывает после удаления слоя с карты.
Событие Данные Описание
popupopen PopupEvent Срабатывает при открытии всплывающего окна, привязанного к этому слою.
popupclose PopupEvent Срабатывает при закрытии всплывающего окна, привязанного к этому слою.
Событие Данные Описание
tooltipopen TooltipEvent Срабатывает при открытии всплывающей подсказки, привязанной к этому слою.
tooltipclose TooltipEvent Срабатывает при закрытии всплывающей подсказки, привязанной к этому слою.

Методы

В дополнение к общим методам слоя, таким как addTo() и remove() и методам всплывающих окон, таким как bindPopup(), вы также можете использовать следующие методы:
Метод Возвращает Описание
getLatLng() LatLng

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

setLatLng(<LatLng> latlng) this

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

setZIndexOffset(<Number> offset) this

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

getIcon() Icon

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

setIcon(<Icon> icon) this

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

setOpacity(<Number> opacity) this

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

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

Метод Возвращает Описание
toGeoJSON(<Number|false> precision?) Object

Значения координат округляются с помощью функции formatNum с заданным precision. Возвращает представление метки в формате GeoJSON (как GeoJSON Point Feature).

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup

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> propagate?) Boolean

Возвращает true , если для конкретного типа события прикреплены какие-либо слушатели. Проверка может быть необязательно распространена, она вернет 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.options.draggable).

DivOverlay

Базовая модель для L.Popup и L.Tooltip. Наследуйте от неё для пользовательских наложений, таких как плагины.

Параметры

Параметр Тип Значение по умолчанию Описание
interactive Boolean false Если true, всплывающее окно/подсказка будет реагировать на события мыши.
offset Point Point(0, 0) Смещение позиции наложения.
className String '' Пользовательское имя класса CSS для присвоения наложению.
pane String undefined Map pane куда будет добавлено наложение.
Параметр Тип Значение по умолчанию Описание
bubblingMouseEvents Boolean true Если true, событие мыши на этом слое вызовет то же событие на карте (если не используется L.DomEvent.stopPropagation).
Параметр Тип Значение по умолчанию Описание
attribution String null Строка, отображаемая в элементе управления атрибутами, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридическим обязательством перед правообладателями и поставщиками плиток.

События

События DivOverlay

Событие Данные Описание
contentupdate Event Вызывается при обновлении содержимого наложения
Событие Данные Описание
click MouseEvent Вызывается, когда пользователь нажимает (или нажимает) на слой.
dblclick MouseEvent Вызывается, когда пользователь дважды щелкает (или дважды тапает) по слою.
mousedown MouseEvent Вызывается, когда пользователь нажимает кнопку мыши на слое.
mouseup MouseEvent Вызывается, когда пользователь отпускает нажатую кнопку мыши на слое.
mouseover MouseEvent Вызывается, когда курсор мыши входит в слой.
mouseout MouseEvent Вызывается, когда курсор мыши выходит из слоя.
contextmenu MouseEvent Вызывается, когда пользователь щелкает правой кнопкой мыши по слою, предотвращает отображение контекстного меню браузера по умолчанию, если есть слушатели на этом событии. Также вызывается на мобильных устройствах, когда пользователь удерживает одиночное касание в течение секунды (также называется длительным нажатием).
Событие Данные Описание
add Event Вызывается после добавления слоя на карту
remove Event Вызывается после удаления слоя с карты
Событие Данные Описание
popupopen PopupEvent Вызывается при открытии всплывающего окна, связанного с этим слоем
popupclose PopupEvent Вызывается при закрытии всплывающего окна, связанного с этим слоем
Событие Данные Описание
tooltipopen TooltipEvent Вызывается при открытии подсказки, привязанной к этому слою.
tooltipclose TooltipEvent Вызывается при закрытии подсказки, привязанной к этому слою.

Методы

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

Добавляет наложение на карту. Альтернатива map.openPopup(popup)/.openTooltip(tooltip).

close() this

Закрывает наложение. Альтернатива map.closePopup(popup)/.closeTooltip(tooltip) и layer.closePopup()/.closeTooltip().

toggle(<Layer> layer?) this

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

getLatLng() LatLng

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

setLatLng(<LatLng> latlng) this

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

getContent() String|HTMLElement

Возвращает содержимое наложения.

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

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

getElement() String|HTMLElement

Возвращает HTML-контейнер наложения.

update() null

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

isOpen() Boolean

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

bringToFront() this

Выводит это наложение поверх других наложений (в той же панели карты).

bringToBack() this

Выводит это наложение под другие наложения (в той же панели карты).

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup

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> propagate?) Boolean

Возвращает true, если для определенного типа события есть какие-либо присоединенные слушатели. Проверка может необязательно распространяться, она вернет 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(…)

Поп-ап

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

Параметры

Параметр Тип Значение по умолчанию Описание
pane String 'popupPane' Map pane куда будет добавлен всплывающий элемент.
offset Point Point(0, 7) Смещение позиции всплывающего окна.
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, если вы хотите переопределить стандартное поведение закрытия всплывающего окна при открытии другого всплывающего окна.
closeOnEscapeKey Boolean true Установите в false, если вы хотите переопределить стандартное поведение клавиши ESC для закрытия всплывающего окна.
closeOnClick Boolean * Установите, если вы хотите переопределить стандартное поведение закрытия всплывающего окна при нажатии пользователем на карту. По умолчанию соответствует параметру карты closePopupOnClick.
className String '' Пользовательское имя класса CSS для назначения всплывающему окну.
Параметр Тип Значение по умолчанию Описание
interactive Boolean false Если true, всплывающее окно/подсказка будут реагировать на события мыши.
Параметр Тип Значение по умолчанию Описание
bubblingMouseEvents Boolean true Если true, событие мыши на этом слое вызовет то же самое событие на карте (если не используется L.DomEvent.stopPropagation).
Параметр Тип Значение по умолчанию Описание
attribution String null Строка, отображаемая в элементе управления атрибутами, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридической обязанностью перед правообладателями и поставщиками плиток.

События

Событие Данные Описание
contentupdate Event Вызывается при обновлении содержимого наложения
Событие Данные Описание
click MouseEvent Срабатывает при щелчке (или тапе) пользователя по слою.
dblclick MouseEvent Срабатывает при двойном щелчке (или двойном тапе) пользователя по слою.
mousedown MouseEvent Срабатывает, когда пользователь нажимает кнопку мыши на слое.
mouseup MouseEvent Срабатывает, когда пользователь отпускает кнопку мыши, нажатую на слое.
mouseover MouseEvent Срабатывает, когда курсор мыши попадает на слой.
mouseout MouseEvent Срабатывает, когда курсор мыши покидает слой.
contextmenu MouseEvent Срабатывает, когда пользователь щелкает правой кнопкой мыши по слою; предотвращает отображение контекстного меню браузера по умолчанию, если существуют обработчики этого события. Также срабатывает на мобильных устройствах, когда пользователь удерживает одно прикосновение в течение секунды (также называется удерживанием).
Событие Данные Описание
add Event Срабатывает после добавления слоя на карту.
remove Event Срабатывает после удаления слоя с карты.
Событие Данные Описание
popupopen PopupEvent Срабатывает при открытии всплывающего окна, привязанного к этому слою.
popupclose PopupEvent Срабатывает при закрытии всплывающего окна, привязанного к этому слою.
Событие Данные Описание
tooltipopen TooltipEvent Срабатывает при открытии всплывающей подсказки, привязанной к этому слою.
tooltipclose TooltipEvent Срабатывает при закрытии всплывающей подсказки, привязанной к этому слою.

Методы

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

Альтернатива map.openPopup(popup). Добавляет всплывающее окно на карту и закрывает предыдущее.

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

Закрывает наложение. Альтернатива map.closePopup(popup)/.closeTooltip(tooltip) и layer.closePopup()/.closeTooltip().

toggle(<Layer> layer?) this

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

getLatLng() LatLng

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

setLatLng(<LatLng> latlng) this

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

getContent() String|HTMLElement

Возвращает содержимое наложения.

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

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

getElement() String|HTMLElement

Возвращает HTML-контейнер наложения.

update() null

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

isOpen() Boolean

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

bringToFront() this

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

bringToBack() this

Выводит это наложение назад за другими наложениями (в том же слое отображения карты).

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup

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> propagate?) Boolean

Возвращает true, если для определенного типа событий есть какие-либо обработчики. Проверка может быть необязательно распространена, она вернёт 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, подсказка будет следовать за курсором вместо того, чтобы быть зафиксированной в центре объекта.
opacity Number 0.9 Непрозрачность контейнера подсказки.
Параметр Тип Значение по умолчанию Описание
interactive Boolean false Если true, всплывающая подсказка/подсказка будет реагировать на события мыши.
className String '' Настраиваемое имя класса CSS для присвоения наложению.
Параметр Тип Значение по умолчанию Описание
bubblingMouseEvents Boolean true Когда true, событие мыши на этом слое вызовет то же событие на карте (если не используется L.DomEvent.stopPropagation).
Параметр Тип Значение по умолчанию Описание
attribution String null Строка, отображаемая в элементе управления атрибуцией, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридическим обязательством перед правообладателями и поставщиками плиток.

События

Событие Данные Описание
contentupdate Event Срабатывает при обновлении содержимого наложения
Событие Данные Описание
click MouseEvent Срабатывает при щелчке (или нажатии) пользователем по слою.
dblclick MouseEvent Срабатывает при двойном щелчке (или двойном нажатии) пользователем по слою.
mousedown MouseEvent Срабатывает при нажатии пользователем кнопки мыши на слое.
mouseup MouseEvent Срабатывает при отпускании пользователем кнопки мыши, нажатой на слое.
mouseover MouseEvent Срабатывает при входе курсора в слой.
mouseout MouseEvent Срабатывает при выходе курсора из слоя.
contextmenu MouseEvent Срабатывает при правом щелчке пользователя по слою, предотвращает отображение контекстного меню браузера по умолчанию, если есть обработчики на этом событии. Также срабатывает на мобильных устройствах, когда пользователь удерживает одно прикосновение в течение секунды (также называется длинным нажатием).
Событие Данные Описание
add Event Срабатывает после добавления слоя на карту
remove Event Срабатывает после удаления слоя с карты
Событие Данные Описание
popupopen PopupEvent Срабатывает при открытии всплывающей подсказки, привязанной к этому слою
popupclose PopupEvent Срабатывает при закрытии всплывающей подсказки, привязанной к этому слою
Событие Данные Описание
tooltipopen TooltipEvent Вызывается при открытии всплывающей подсказки, связанной с этим слоем.
tooltipclose TooltipEvent Вызывается при закрытии всплывающей подсказки, связанной с этим слоем.

Методы

Метод Возвращаемое значение Описание
openOn(<Map> map) this

Добавляет оверлей на карту. Альтернатива map.openPopup(popup)/.openTooltip(tooltip).

close() this

Закрывает оверлей. Альтернатива map.closePopup(popup)/.closeTooltip(tooltip) и layer.closePopup()/.closeTooltip().

toggle(<Layer> layer?) this

Открывает или закрывает оверлей, связанный со слоем, в зависимости от текущего состояния. Аргумент можно опустить только для оверлея, связанного со слоем. Альтернатива layer.togglePopup()/.toggleTooltip().

getLatLng() LatLng

Возвращает географическую точку оверлея.

setLatLng(<LatLng> latlng) this

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

getContent() String|HTMLElement

Возвращает содержимое оверлея.

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

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

getElement() String|HTMLElement

Возвращает HTML-контейнер оверлея.

update() null

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

isOpen() Boolean

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

bringToFront() this

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

bringToBack() this

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

Возвращает true если для конкретного типа события есть присоединённые слушатели. Проверка может быть произведена рекурсивно, вернёт 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. Расширяет GridLayer.

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

L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png?{foo}', {foo: 'bar', attribution: '&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors'}).addTo(map);

Шаблон URL

Строка следующего вида:

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

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

Вы можете использовать пользовательские ключи в шаблоне, которые будут оцениваться из параметров TileLayer, например так:

L.tileLayer('https://{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 и пользователь находится на экране с высоким разрешением, он запросит четыре плитки с половиной указанного размера и более высокий уровень масштаба вместо одной, чтобы использовать высокое разрешение.
crossOrigin Boolean|String false Включает ли атрибут crossOrigin для плиток. Если предоставлена строка, все плитки будут иметь атрибут crossOrigin, установленный в предоставленную строку. Это необходимо, если вы хотите получить доступ к данным пикселей плиток. Обратитесь к Настройки CORS для допустимых значений строки.
referrerPolicy Boolean|String false Будет ли добавлен атрибут referrerPolicy к плиткам. Если предоставлена строка, все плитки будут иметь атрибут referrerPolicy, установленный в предоставленную строку. Это может потребоваться, если контекст отображения вашей карты имеет строгие настройки по умолчанию, но ваш поставщик плиток ожидает допустимый referrer (например, для проверки токена API). Обратитесь к HTMLImageElement.referrerPolicy для допустимых значений строк.
Параметр Тип Значение по умолчанию Описание
tileSize Number|Point 256 Ширина и высота тайлов в сетке. Используйте число, если ширина и высота равны, или L.point(width, height) в противном случае.
opacity Number 1.0 Непрозрачность тайлов. Может быть использована в функции createTile().
updateWhenIdle Boolean (depends) Загружать новые тайлы только после завершения панорамирования. true по умолчанию в мобильных браузерах, чтобы избежать большого количества запросов и обеспечить плавную навигацию. false в противном случае, чтобы отобразить новые тайлы *во время* панорамирования, так как легко выйти за пределы опции keepBuffer в браузерах на настольных компьютерах.
updateWhenZooming Boolean true По умолчанию, плавная анимация масштабирования (во время масштабирования касанием или flyTo()) будет обновлять слои сетки на каждом цельном уровне масштабирования. Установка этого параметра в false обновит слой сетки только по завершении плавной анимации.
updateInterval Number 200 Тайлы не будут обновляться чаще, чем раз в updateInterval миллисекунд во время панорамирования.
zIndex Number 1 Явное значение zIndex слоя тайлов.
bounds LatLngBounds undefined Если задано, тайлы будут загружаться только внутри заданной области LatLngBounds.
maxNativeZoom Number undefined Максимальное значение масштабирования, доступное в источнике тайлов. Если оно указано, тайлы на всех уровнях масштабирования выше maxNativeZoom будут загружаться с уровня maxNativeZoom и автоматически масштабироваться.
minNativeZoom Number undefined Минимальное значение масштабирования, доступное в источнике тайлов. Если оно указано, тайлы на всех уровнях масштабирования ниже minNativeZoom будут загружаться с уровня minNativeZoom и автоматически масштабироваться.
noWrap Boolean false Определяет, повторяется ли слой по антимеридиану. Если true, слой GridLayer будет отображаться только один раз на низких уровнях масштабирования. Не оказывает влияния, если система координат карты (map CRS) не повторяется. Может использоваться в сочетании с bounds для предотвращения запроса тайлов за пределами границ системы координат.
pane String 'tilePane' Map pane куда будет добавлен слой сетки.
className String '' Настраиваемое имя класса для присвоения слою тайлов. По умолчанию пустое.
keepBuffer Number 2 При панорамировании карты, сохранять такое количество строк и столбцов тайлов перед их удалением.
Параметр Тип Значение по умолчанию Описание
attribution String null Строка, отображаемая в элементе управления подписью, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является обязательством по отношению к правообладателям и поставщикам тайлов.

События

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

Событие Данные Описание
tileabort TileEvent Срабатывает, когда тайл загружался, но теперь не нужен.
Событие Данные Описание
loading Event Срабатывает, когда слой сетки начинает загружать тайлы.
tileunload TileEvent Срабатывает, когда тайл удаляется (например, когда тайл выходит за пределы экрана).
tileloadstart TileEvent Срабатывает, когда тайл запрашивается и начинает загружаться.
tileerror TileErrorEvent Срабатывает, когда возникает ошибка при загрузке тайла.
tileload TileEvent Срабатывает, когда тайл загружается.
load Event Срабатывает, когда слой сетки загрузил все видимые тайлы.
Событие Данные Описание
add Event Срабатывает после добавления слоя на карту.
remove Event Срабатывает после удаления слоя с карты.
Событие Данные Описание
popupopen PopupEvent Срабатывает при открытии всплывающей подсказки, связанной с этим слоем.
popupclose PopupEvent Срабатывает при закрытии всплывающей подсказки, связанной с этим слоем.
Событие Данные Описание
tooltipopen TooltipEvent Срабатывает при открытии подсказки, связанной с этим слоем.
tooltipclose TooltipEvent Срабатывает при закрытии подсказки, связанной с этим слоем.

Методы

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

Обновляет шаблон URL слоя и перерисовывает его (если noRedraw установлено в true). Если URL не изменился, слой не будет перерисован, если параметр noRedraw не установлен в false.

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

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

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

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

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

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

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

bringToBack() this

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

getContainer() HTMLElement

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

setOpacity(<Number> opacity) this

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

setZIndex(<Number> zIndex) this

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

isLoading() Boolean

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

redraw() this

Заставляет слой очистить все тайлы и запросить их заново.

getTileSize() Point

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup.

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> propagate?) Boolean

Возвращает true, если для определённого типа события прикреплены какие-либо обработчики. Проверка необязательно может быть распространена, она вернёт 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|String false Добавить атрибут crossOrigin к плиткам. Если указана строка, атрибут crossOrigin всех плиток будет установлен на указанную строку. Это необходимо, если вы хотите получить доступ к данным пикселей плитки. Обратитесь к Настройкам CORS для допустимых значений строк.
referrerPolicy Boolean|String false Добавить атрибут referrerPolicy к плиткам. Если указана строка, атрибут referrerPolicy всех плиток будет установлен на указанную строку. Это может потребоваться, если контекст отрисовки вашей карты имеет строгий параметр по умолчанию, но ваш поставщик плиток ожидает действительный referrer (например, для проверки токена API). Обратитесь к HTMLImageElement.referrerPolicy для допустимых значений строк.
Опция Тип По умолчанию Описание
tileSize Number|Point 256 Ширина и высота плиток в сетке. Используйте число, если ширина и высота равны, или L.point(width, height) в противном случае.
opacity Number 1.0 Непрозрачность плиток. Может быть использована в функции createTile().
updateWhenIdle Boolean (depends) Загружать новые плитки только по завершении панорамирования. По умолчанию включено в мобильных браузерах, чтобы избежать слишком большого количества запросов и обеспечить плавную навигацию. false в противном случае, чтобы отображать новые плитки *во время* панорамирования, поскольку в настольных браузерах легко выйти за пределы параметра keepBuffer.
updateWhenZooming Boolean true По умолчанию плавная анимация масштабирования (во время масштабирования нажатием или flyTo()) будет обновлять слои сетки каждые целые значения масштабирования. Установка этого параметра в false обновит слой сетки только по завершении плавной анимации.
updateInterval Number 200 Плитки не будут обновляться чаще, чем раз в updateInterval миллисекунд во время панорамирования.
zIndex Number 1 Явное значение zIndex слоя плиток.
bounds LatLngBounds undefined При установке плитки будут загружаться только внутри заданных LatLngBounds.
maxNativeZoom Number undefined Максимальное значение масштабирования, доступное для источника плиток. Если оно указано, плитки на всех уровнях масштабирования, больших, чем maxNativeZoom, будут загружены с уровня maxNativeZoom и автоматически масштабированы.
minNativeZoom Number undefined Минимальное значение масштабирования, доступное для источника плиток. Если оно указано, плитки на всех уровнях масштабирования, меньших, чем minNativeZoom, будут загружены с уровня minNativeZoom и автоматически масштабированы.
noWrap Boolean false Включает ли слой обёртку вокруг антимеридиана. Если true, слой GridLayer будет отображаться только один раз при низких уровнях масштабирования. Не имеет эффекта, когда CRS карты не обёртывается. Может быть использован в сочетании с bounds для предотвращения запроса плиток за пределами ограничений CRS.
pane String 'tilePane' Map pane где будет добавлен слой сетки.
className String '' Пользовательское имя класса, которое нужно назначить слою плиток. По умолчанию пусто.
keepBuffer Number 2 При панорамировании карты сохраняйте такое количество строк и столбцов плиток перед их удалением.
Опция Тип По умолчанию Описание
attribution String null Строка, отображаемая в элементе управления атрибутами, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридической обязанностью перед правообладателями и поставщиками плиток.

События

Событие Данные Описание
tileabort TileEvent Вызывается, когда плитка загружалась, но больше не нужна.
Событие Данные Описание
loading Event Вызывается, когда слой сетки начинает загружать плитки.
tileunload TileEvent Вызывается, когда плитка удаляется (например, когда плитка выходит за пределы экрана).
tileloadstart TileEvent Вызывается, когда плитка запрошена и начинает загружаться.
tileerror TileErrorEvent Вызывается, когда возникает ошибка при загрузке плитки.
tileload TileEvent Вызывается, когда плитка загружается.
load Event Вызывается, когда слой сетки загрузил все видимые плитки.
Событие Данные Описание
add Event Срабатывает после добавления слоя на карту
remove Event Срабатывает после удаления слоя с карты
Событие Данные Описание
popupopen PopupEvent Срабатывает при открытии всплывающего окна, связанного с этим слоем
popupclose PopupEvent Срабатывает при закрытии всплывающего окна, связанного с этим слоем
Событие Данные Описание
tooltipopen TooltipEvent Срабатывает при открытии подсказки, связанной с этим слоем.
tooltipclose TooltipEvent Срабатывает при закрытии подсказки, связанной с этим слоем.

Методы

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

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

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

Обновляет шаблон URL слоя и перерисовывает его (если noRedraw установлено в true). Если URL не изменился, слой не будет перерисован, если параметр noRedraw не установлен в false.

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

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

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

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

bringToBack() this

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

getContainer() HTMLElement

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

setOpacity(<Number> opacity) this

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

setZIndex(<Number> zIndex) this

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

isLoading() Boolean

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

redraw() this

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

getTileSize() Point

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup

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> propagate?) Boolean

Возвращает true если для определенного типа события есть какие-либо прикрепленные обработчики. Проверка может быть необязательно распространена, она вернет 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 = 'https://maps.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|String false Добавлять ли атрибут crossOrigin к изображению. Если указана строка, атрибут crossOrigin изображения будет установлен в предоставленную строку. Это необходимо, если вы хотите получить доступ к данным пикселей изображения. Обратитесь к настройкам CORS для допустимых значений строк.
errorOverlayUrl String '' URL наложения изображения, которое следует отобразить вместо наложения, не загруженного.
zIndex Number 1 Явное значение zIndex слоя наложения.
className String '' Пользовательское имя класса для назначения изображению. По умолчанию пусто.
Параметр Тип По умолчанию Описание
bubblingMouseEvents Boolean true Если true, событие мыши на этом слое будет триггерить то же событие на карте (если не используется L.DomEvent.stopPropagation).
Параметр Тип По умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен в панель наложений карты. Переопределение этого параметра приведет к тому, что слой по умолчанию будет размещен на другой панели.
attribution String null Строка, отображаемая в элементе управления атрибуцией, например «© OpenStreetMap contributors». Она описывает данные слоя и часто является обязательством в отношении правообладателей и поставщиков плиток.

События

Событие Данные Описание
load Event Вызывается, когда слой ImageOverlay загрузил свое изображение
error Event Вызывается, когда слой ImageOverlay не смог загрузить свое изображение
Событие Данные Описание
click MouseEvent Вызывается, когда пользователь щелкает (или тапает) по слою.
dblclick MouseEvent Вызывается, когда пользователь дважды щелкает (или дважды тапает) по слою.
mousedown MouseEvent Вызывается, когда пользователь нажимает кнопку мыши на слое.
mouseup MouseEvent Вызывается, когда пользователь отпускает кнопку мыши, нажатую на слое.
mouseover MouseEvent Вызывается, когда курсор мыши входит в слой.
mouseout MouseEvent Вызывается, когда курсор мыши покидает слой.
contextmenu MouseEvent Вызывается, когда пользователь щелкает правой кнопкой мыши по слою. Блокирует отображение контекстного меню браузера по умолчанию, если имеются обработчики этого события. Также срабатывает на мобильных устройствах, когда пользователь удерживает одиночное касание в течение секунды (также называется длинным нажатием).
Событие Данные Описание
add Event Вызывается после добавления слоя на карту
remove Event Вызывается после удаления слоя с карты
Событие Данные Описание
popupopen PopupEvent Вызывается при открытии всплывающего окна, привязанного к этому слою
popupclose PopupEvent Вызывается при закрытии всплывающего окна, привязанного к этому слою
Event Data Description
tooltipopen TooltipEvent Вызывается при открытии всплывающей подсказки, привязанной к этому слою.
tooltipclose TooltipEvent Вызывается при закрытии всплывающей подсказки, привязанной к этому слою.

Методы

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

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

bringToFront() this

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

bringToBack() this

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

setUrl(<String> url) this

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

setBounds(<LatLngBounds> bounds) this

Обновляет область, которую покрывает ImageOverlay

setZIndex(<Number> value) this

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

getBounds() LatLngBounds

Получить область, которую покрывает ImageOverlay

getElement() HTMLElement

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

getCenter() LatLng

Возвращает центр ImageOverlay.

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup

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> propagate?) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

VideoOverlay

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

Видеоналожение использует HTML5 элемент <video>.

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

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

Создание

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

Параметры

Параметр Тип Значение по умолчанию Описание
autoplay Boolean true Автоматически воспроизводить видео при загрузке. В некоторых браузерах автовоспроизведение будет работать только с muted: true
loop Boolean true Видеоряд будет циклически воспроизводиться с начала при проигрывании.
keepAspectRatio Boolean true Сохранять пропорции видео после проектирования. Актуально для поддерживаемых браузеров. См. совместимость браузеров
muted Boolean false Видео начнется с отключённого звука при загрузке.
playsInline Boolean true Мобильные браузеры будут воспроизводить видео в том же месте, а не открывать его в полноэкранном режиме.
Параметр Тип Значение по умолчанию Описание
opacity Number 1.0 Непрозрачность наложения изображения.
alt String '' Текст для атрибута alt изображения (полезно для доступности).
interactive Boolean false Если true, наложение изображения будет генерировать события мыши при нажатии или наведении.
crossOrigin Boolean|String false Добавлять атрибут crossOrigin к изображению. Если строка, атрибут crossOrigin изображения будет установлен на эту строку. Это необходимо, если вы хотите получить доступ к пиксельным данным изображения. Обратитесь к настройкам CORS для допустимых значений строк.
errorOverlayUrl String '' URL наложения изображения, которое будет показано вместо наложения, которое не удалось загрузить.
zIndex Number 1 Явное значение zIndex слоя наложения.
className String '' Пользовательское имя класса для назначения изображению. По умолчанию пустое.
Параметр Тип Значение по умолчанию Описание
bubblingMouseEvents Boolean true Когда true, событие мыши на этом слое сгенерирует то же событие на карте (если не используется L.DomEvent.stopPropagation).
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой добавляется на панель наложения карты overlay pane. Переопределение этого параметра поместит слой на другую панель по умолчанию.
attribution String null Строка, отображаемая в контроле атрибуции, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридической обязанностью по отношению к правообладателям и поставщикам тайлов.

События

Событие Данные Описание
load Event Срабатывает, когда видео завершило загрузку первого кадра
Событие Данные Описание
error Event Срабатывает, когда слой ImageOverlay не смог загрузить изображение
Событие Данные Описание
click MouseEvent Срабатывает при щелчке (или тапе) пользователя по слою.
dblclick MouseEvent Срабатывает при двойном щелчке (или двойном тапе) пользователя по слою.
mousedown MouseEvent Срабатывает при нажатии пользователем кнопки мыши на слой.
mouseup MouseEvent Срабатывает при отпускании пользователем нажатой кнопки мыши на слой.
mouseover MouseEvent Срабатывает при входе курсора мыши в слой.
mouseout MouseEvent Срабатывает при выходе курсора мыши из слоя.
contextmenu MouseEvent Срабатывает при правом щелчке пользователя на слое. Блокирует отображение контекстного меню браузера по умолчанию, если есть обработчики на это событие. Также срабатывает на мобильных устройствах при удержании одного касания в течение секунды (также называется удерживающим нажатием).
Событие Данные Описание
add Event Срабатывает после добавления слоя на карту.
remove Event Срабатывает после удаления слоя с карты.
Событие Данные Описание
popupopen PopupEvent Срабатывает при открытии всплывающего окна, привязанного к этому слою.
popupclose PopupEvent Срабатывает при закрытии всплывающего окна, привязанного к этому слою.
Событие Данные Описание
tooltipopen TooltipEvent Срабатывает при открытии всплывающей подсказки, привязанной к этому слою.
tooltipclose TooltipEvent Срабатывает при закрытии всплывающей подсказки, привязанной к этому слою.

Методы

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

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

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

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

bringToFront() this

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

bringToBack() this

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

setUrl(<String> url) this

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

setBounds(<LatLngBounds> bounds) this

Обновляет границы, которые охватывает ImageOverlay

setZIndex(<Number> value) this

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

getBounds() LatLngBounds

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

getCenter() LatLng

Возвращает центр ImageOverlay.

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup

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> propagate?) Boolean

Возвращает true , если у определённого типа события есть какие-либо прикреплённые обработчики. Проверка может необязательно распространяться, она вернёт 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(…)

SVGOverlay

Используется для загрузки, отображения и предоставления доступа к DOM SVG-файла в рамках определённых границ карты. Расширяет ImageOverlay.

SVG-слой использует элемент <svg>.

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

var svgElement = document.createElementNS("http://www.w3.org/2000/svg", "svg");
svgElement.setAttribute('xmlns', "http://www.w3.org/2000/svg");
svgElement.setAttribute('viewBox', "0 0 200 200");
svgElement.innerHTML = '<rect width="200" height="200"/><rect x="75" y="23" width="50" height="50" style="fill:red"/><rect x="75" y="123" width="50" height="50" style="fill:#0013ff"/>';
var svgElementBounds = [ [ 32, -130 ], [ 13, -100 ] ];
L.svgOverlay(svgElement, svgElementBounds).addTo(map);

Создание

Фабрика Описание
L.svgOverlay(<String|SVGElement> svg, <LatLngBounds> bounds, <SVGOverlay options> options?) Создаёт объект слоя изображения на основе SVG-элемента и географических границ, к которым он привязан. Атрибут viewBox должен быть указан в SVG-элементе для правильного масштабирования.

Параметры

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

События

Событие Данные Описание
load Event Срабатывает при загрузке изображения слоем ImageOverlay.
error Event Срабатывает, когда слой ImageOverlay не удаётся загрузить.
Событие Данные Описание
click MouseEvent Срабатывает при щелчке пользователя по слою.
dblclick MouseEvent Срабатывает при двойном щелчке пользователя по слою.
mousedown MouseEvent Срабатывает при нажатии пользователем кнопки мыши на слое.
mouseup MouseEvent Срабатывает при отпускании пользователем кнопки мыши, нажатой на слое.
mouseover MouseEvent Срабатывает при входе курсора мыши на слой.
mouseout MouseEvent Срабатывает при выходе курсора мыши со слоя.
contextmenu MouseEvent Срабатывает при правом клике пользователя на слое. Предотвращает отображение контекстного меню браузера по умолчанию, если на этом событии есть обработчики. Также срабатывает на мобильных устройствах при удержании одного касания в течение секунды (также называется длинным нажатием).
Событие Данные Описание
add Event Срабатывает после добавления слоя на карту.
remove Event Срабатывает после удаления слоя с карты.
Событие Данные Описание
popupopen PopupEvent Срабатывает при открытии всплывающего окна, связанного с этим слоем.
popupclose PopupEvent Срабатывает при закрытии всплывающего окна, связанного с этим слоем.
Событие Данные Описание
tooltipopen TooltipEvent Срабатывает при открытии всплывающей подсказки, привязанной к этому слою.
tooltipclose TooltipEvent Срабатывает при закрытии всплывающей подсказки, привязанной к этому слою.

Методы

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

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

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

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

bringToFront() this

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

bringToBack() this

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

setUrl(<String> url) this

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

setBounds(<LatLngBounds> bounds) this

Обновляет границы, которые охватывает это ImageOverlay.

setZIndex(<Number> value) this

Изменяет значение zIndex наложения изображения.

getBounds() LatLngBounds

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

getCenter() LatLng

Возвращает центр ImageOverlay.

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup

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> propagate?) Boolean

Возвращает true , если для определённого типа события есть какие-либо присоединённые слушатели. Проверка может быть необязательно распространена, она вернёт 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.

Опции

Опция Тип Значение по умолчанию Описание
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 Строка, отображаемая в панели атрибутов, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридическим обязательством перед правообладателями и поставщиками плиток.

События

Событие Данные Описание
click MouseEvent Вызывается при нажатии пользователем на слой.
dblclick MouseEvent Вызывается при двойном нажатии пользователем на слой.
mousedown MouseEvent Вызывается при нажатии пользователем кнопки мыши на слой.
mouseup MouseEvent Вызывается при отпускании пользователем нажатой кнопки мыши на слой.
mouseover MouseEvent Вызывается при входе курсора мыши в слой.
mouseout MouseEvent Вызывается при выходе курсора мыши из слоя.
contextmenu MouseEvent Вызывается при правом клике пользователем на слой, предотвращает отображение контекстного меню браузера по умолчанию, если есть слушатели на этом событии. Также вызывается на мобильных устройствах, когда пользователь удерживает одно касание в течение секунды (также называется удерживанием).
Событие Данные Описание
add Event Срабатывает после добавления слоя на карту
remove Event Срабатывает после удаления слоя с карты
Событие Данные Описание
popupopen PopupEvent Срабатывает при открытии всплывающего окна, привязанного к этому слою
popupclose PopupEvent Срабатывает при закрытии всплывающего окна, привязанного к этому слою
Событие Данные Описание
tooltipopen TooltipEvent Срабатывает при открытии всплывающей подсказки, привязанной к этому слою.
tooltipclose TooltipEvent Срабатывает при закрытии всплывающей подсказки, привязанной к этому слою.

Методы

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

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup

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> propagate?) Boolean

Возвращает true , если для определенного типа события подключены какие-либо обработчики. Проверка может необязательно быть распространена, в таком случае будет возвращено 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 Строка, отображаемая в элементе управления подписью, например, "© OpenStreetMap contributors". Описывает данные слоя и часто является юридическим обязательством перед правообладателями и поставщиками плиток.

События

Событие Данные Описание
click MouseEvent Вызывается при щелчке (или нажатии) пользователем на слой.
dblclick MouseEvent Вызывается при двойном щелчке (или двойном нажатии) пользователем на слой.
mousedown MouseEvent Вызывается при нажатии пользователем кнопки мыши на слой.
mouseup MouseEvent Вызывается при отпускании пользователем кнопки мыши, нажатой на слой.
mouseover MouseEvent Вызывается при входе курсора мыши в слой.
mouseout MouseEvent Вызывается при выходе курсора мыши из слоя.
contextmenu MouseEvent Вызывается при правом клике пользователя на слой, предотвращает отображение контекстного меню браузера по умолчанию, если есть обработчики этого события. Также срабатывает на мобильных устройствах, когда пользователь удерживает один палец в течение секунды (также называется длительным нажатием).
Событие Данные Описание
add Event Вызывается после добавления слоя на карту
remove Event Вызывается после удаления слоя с карты
Событие Данные Описание
popupopen PopupEvent Вызывается при открытии всплывающего окна, привязанного к этому слою
popupclose PopupEvent Вызывается при закрытии всплывающего окна, привязанного к этому слою
Событие Данные Описание
tooltipopen TooltipEvent Вызывается при открытии подсказки, привязанной к этому слою.
tooltipclose TooltipEvent Вызывается при закрытии подсказки, привязанной к этому слою.

Методы

Метод Возвращает Описание
toGeoJSON(<Number|false> precision?) Object

Значения координат округляются с помощью функции formatNum с заданным precision. Возвращает представление полилинии в формате GeoJSON (как GeoJSON LineString или MultiLineString Feature).

getLatLngs() LatLng[]

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

setLatLngs(<LatLng[]> latlngs) this

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

isEmpty() Boolean

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

closestLayerPoint(<Point> p) Point

Возвращает ближайшую к p точку на полилинии.

getCenter() LatLng

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

getBounds() LatLngBounds

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

addLatLng(<LatLng> latlng, <LatLng[]> latlngs?) this

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

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

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup

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> propagate?) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

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

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

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

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

// create a red polygon from an array of LatLng points
var latlngs = [[37, -109.05],[41, -109.03],[41, -102.05],[37, -102.04]];

var polygon = L.polygon(latlngs, {color: 'red'}).addTo(map);

// zoom the map to the polygon
map.fitBounds(polygon.getBounds());

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

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

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

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

Создание

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

Параметры

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

События

Событие Данные Описание
click MouseEvent Срабатывает при щелчке (или нажатии) пользователя на слой.
dblclick MouseEvent Срабатывает при двойном щелчке (или двойном нажатии) пользователя на слой.
mousedown MouseEvent Срабатывает, когда пользователь нажимает кнопку мыши на слое.
mouseup MouseEvent Срабатывает, когда пользователь отпускает нажатую кнопку мыши на слое.
mouseover MouseEvent Срабатывает, когда курсор мыши попадает на слой.
mouseout MouseEvent Срабатывает, когда курсор мыши покидает слой.
contextmenu MouseEvent Срабатывает при правом щелчке пользователя на слое. Блокирует стандартное контекстное меню браузера, если есть обработчики этого события. Также срабатывает на мобильных устройствах при удерживании нажатия одного пальца в течение секунды (также называется удержанием).
Событие Данные Описание
add Event Срабатывает после добавления слоя на карту.
remove Event Срабатывает после удаления слоя с карты.
Событие Данные Описание
popupopen PopupEvent Срабатывает при открытии всплывающего окна, привязанного к этому слою.
popupclose PopupEvent Срабатывает при закрытии всплывающего окна, привязанного к этому слою.
Событие Данные Описание
tooltipopen TooltipEvent Срабатывает при открытии всплывающей подсказки, привязанной к этому слою.
tooltipclose TooltipEvent Срабатывает при закрытии всплывающей подсказки, привязанной к этому слою.

Методы

Метод Возвращаемое значение Описание
toGeoJSON(<Number|false> precision?) Object

Значения координат округляются с помощью функции formatNum с заданным precision. Возвращает представление многоугольника в формате GeoJSON (как GeoJSON Polygon или Feature).

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

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

setLatLngs(<LatLng[]> latlngs) this

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

isEmpty() Boolean

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

closestLayerPoint(<Point> p) Point

Возвращает точку, ближайшую к p на полилинии.

getCenter() LatLng

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

getBounds() LatLngBounds

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

addLatLng(<LatLng> latlng, <LatLng[]> latlngs?) this

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

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

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup

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> propagate?) Boolean

Возвращает true, если для определенного типа события есть какие-либо присоединенные слушатели. Проверка может необязательно распространяться, она вернёт 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 Строка, отображаемая в элементе управления атрибутами, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридической обязанностью по отношению к правообладателям и поставщикам плиток.

События

Событие Данные Описание
click MouseEvent Срабатывает при клике (или тапе) пользователя по слою.
dblclick MouseEvent Срабатывает при двойном клике (или двойном тапе) пользователя по слою.
mousedown MouseEvent Срабатывает при нажатии пользователем кнопки мыши на слое.
mouseup MouseEvent Срабатывает при отпускании пользователем кнопки мыши, нажатой на слое.
mouseover MouseEvent Срабатывает при входе курсора мыши в слой.
mouseout MouseEvent Срабатывает при выходе курсора мыши из слоя.
contextmenu MouseEvent Срабатывает при правом клике пользователя на слое. Предотвращает отображение стандартного контекстного меню браузера, если на этом событии есть обработчики. Также срабатывает на мобильных устройствах при удерживании одного касания в течение секунды (также называется долгим нажатием).
Событие Данные Описание
add Event Срабатывает после добавления слоя на карту.
remove Event Срабатывает после удаления слоя с карты.
Событие Данные Описание
popupopen PopupEvent Срабатывает при открытии всплывающего окна, привязанного к этому слою.
popupclose PopupEvent Срабатывает при закрытии всплывающего окна, привязанного к этому слою.
Событие Данные Описание
tooltipopen TooltipEvent Срабатывает при открытии всплывающей подсказки, привязанной к этому слою.
tooltipclose TooltipEvent Срабатывает при закрытии всплывающей подсказки, привязанной к этому слою.

Методы

Метод Возвращает Описание
setBounds(<LatLngBounds> latLngBounds) this

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

Метод Возвращает Описание
toGeoJSON(<Number|false> precision?) Object

Значения координат округляются с помощью функции formatNum с заданным precision. Возвращает представление многоугольника в формате GeoJSON (как GeoJSON Polygon или MultiPolygon Feature).

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

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

setLatLngs(<LatLng[]> latlngs) this

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

isEmpty() Boolean

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

closestLayerPoint(<Point> p) Point

Возвращает точку, ближайшую к p на полилинии.

getCenter() LatLng

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

getBounds() LatLngBounds

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

addLatLng(<LatLng> latlng, <LatLng[]> latlngs?) this

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

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

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из указанной LayerGroup

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> propagate?) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

Окружность

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

Это приближение, и оно начинает отклоняться от реальной окружности ближе к полюсам (из-за искажения проекции).

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

L.circle([50.5, 30.5], {radius: 200}).addTo(map);

Создание

Фабрика Описание
L.circle(<LatLng> latlng, <Circle options> options?) Создаёт объект окружности, заданной географической точкой и объектом опций, содержащим радиус окружности.
L.circle(<LatLng> latlng, <Number> radius, <Circle options> options?) Устаревший способ создания окружности для совместимости с кодом 0.7.x. Не использовать в новых приложениях или плагинах.

Параметры

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

События

Событие Данные Описание
move Event Срабатывает, когда маркер перемещается с помощью setLatLng. Старые и новые координаты включены в аргументы события как oldLatLng, latlng.
Событие Данные Описание
click MouseEvent Срабатывает, когда пользователь щелкает (или тапает) по слою.
dblclick MouseEvent Срабатывает, когда пользователь дважды щелкает (или дважды тапает) по слою.
mousedown MouseEvent Срабатывает, когда пользователь нажимает кнопку мыши на слое.
mouseup MouseEvent Срабатывает, когда пользователь отпускает кнопку мыши, нажатую на слое.
mouseover MouseEvent Срабатывает, когда курсор мыши попадает на слой.
mouseout MouseEvent Срабатывает, когда курсор мыши покидает слой.
contextmenu MouseEvent Срабатывает, когда пользователь нажимает правую кнопку мыши на слое, предотвращает отображение контекстного меню браузера по умолчанию, если есть обработчики на этом событии. Также срабатывает на мобильных устройствах, когда пользователь удерживает одно касание в течение секунды (также называется удержанием).
Событие Данные Описание
add Event Срабатывает после добавления слоя на карту
remove Event Срабатывает после удаления слоя с карты
Событие Данные Описание
popupopen PopupEvent Срабатывает, когда всплывающая подсказка, привязанная к этому слою, открывается
popupclose PopupEvent Срабатывает, когда всплывающая подсказка, привязанная к этому слою, закрывается
Событие Данные Описание
tooltipopen TooltipEvent Срабатывает, когда подсказка, привязанная к этому слою, открывается.
tooltipclose TooltipEvent Срабатывает, когда подсказка, привязанная к этому слою, закрывается.

Методы

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

Устанавливает радиус круга. Единицы измерения — метры.

getRadius() Number

Возвращает текущий радиус круга. Единицы измерения — метры.

getBounds() LatLngBounds

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

Метод Возвращает Описание
toGeoJSON(<Number|false> precision?) Object

Значения координат округляются с помощью функции formatNum с заданным precision. Возвращает представление маркера круга в формате GeoJSON (как объект GeoJSON Point Feature).

setLatLng(<LatLng> latLng) this

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

getLatLng() LatLng

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

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

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из указанной LayerGroup

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> propagate?) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

CircleMarker

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

Создание

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

Параметры

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

События

Событие Данные Описание
move Event Срабатывает при перемещении маркера с помощью setLatLng. Старые и новые координаты включены в аргументы события как oldLatLng, latlng.
Событие Данные Описание
click MouseEvent Срабатывает при щелчке (или нажатии) пользователя на слой.
dblclick MouseEvent Срабатывает при двойном щелчке (или двойном нажатии) пользователя на слой.
mousedown MouseEvent Срабатывает при нажатии пользователем кнопки мыши на слое.
mouseup MouseEvent Срабатывает при отпускании пользователем кнопки мыши, нажатой на слое.
mouseover MouseEvent Срабатывает при входе курсора мыши в слой.
mouseout MouseEvent Срабатывает при выходе курсора мыши из слоя.
contextmenu MouseEvent Срабатывает при правом клике пользователя на слое, предотвращает отображение контекстного меню браузера по умолчанию, если есть обработчики этого события. Также срабатывает на мобильных устройствах, когда пользователь удерживает одно касание в течение секунды (также называется длительным нажатием).
Событие Данные Описание
add Event Срабатывает после добавления слоя на карту.
remove Event Срабатывает после удаления слоя с карты.
Событие Данные Описание
popupopen PopupEvent Срабатывает при открытии всплывающего окна, связанного с этим слоем.
popupclose PopupEvent Срабатывает при закрытии всплывающего окна, связанного с этим слоем.
Событие Данные Описание
tooltipopen TooltipEvent Срабатывает при открытии всплывающей подсказки, привязанной к этому слою.
tooltipclose TooltipEvent Срабатывает при закрытии всплывающей подсказки, привязанной к этому слою.

Методы

Метод Возвращаемое значение Описание
toGeoJSON(<Number|false> precision?) Object

Координаты округляются с помощью функции formatNum с заданным precision. Возвращает представление маркера круга в формате GeoJSON (как объект GeoJSON типа Point Feature).

setLatLng(<LatLng> latLng) this

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

getLatLng() LatLng

Возвращает текущую географическую позицию маркера круга.

setRadius(<Number> radius) this

Устанавливает радиус маркера круга. Единицы измерения — пиксели.

getRadius() Number

Возвращает текущий радиус круга.

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

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из указанной LayerGroup.

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> propagate?) Boolean

Возвращает true если для определённого типа события есть какие-либо привязанные обработчики. Проверка может быть дополнительно распространена, вернёт 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

Формат 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 } );

Создание

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

Параметры

Параметр Тип Значение по умолчанию Описание
padding Number 0.1 На сколько расширить область обрезки вокруг представления карты (относительно её размера). Например, 0,1 будет составлять 10% от представления карты в каждом направлении.
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен в слой перекрытия карты. Переопределение этого параметра приведет к размещению слоя на другом слое по умолчанию.
attribution String null Строка, отображаемая в элементе атрибуции, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридической обязанностью перед правообладателями и поставщиками плиток.

События

Событие Данные Описание
update Event Вызывается, когда рендерер обновляет свои границы, центр и масштаб, например, при перемещении карты
Событие Данные Описание
add Event Вызывается после добавления слоя на карту
remove Event Вызывается после удаления слоя с карты
Событие Данные Описание
popupopen PopupEvent Вызывается при открытии всплывающего окна, привязанного к этому слою
popupclose PopupEvent Вызывается при закрытии всплывающего окна, привязанного к этому слою
Событие Данные Описание
tooltipopen TooltipEvent Вызывается при открытии всплывающей подсказки, привязанной к этому слою.
tooltipclose TooltipEvent Вызывается при закрытии всплывающей подсказки, привязанной к этому слою.

Методы

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup

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> propagate?) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

Функции

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

Канвас

Позволяет отображать векторные слои с помощью <canvas>. Наследует Renderer.

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

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

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

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

Использовать рендерер Канвас с дополнительным отступом для определённых векторных геометрий:

var map = L.map('map');
var myRenderer = L.canvas({ padding: 0.5 });
var line = L.polyline( coordinates, { renderer: myRenderer } );
var circle = L.circle( center, { renderer: myRenderer } );

Создание

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

Параметры

Параметр Тип Значение по умолчанию Описание
tolerance Number 0 Насколько расширять радиус толерантности при клике вокруг пути/объекта на карте.
Опция Тип Значение по умолчанию Описание
padding Number 0.1 Насколько нужно расширить область обрезки вокруг представления карты (относительно её размера), например, 0,1 будет соответствовать 10% размера представления карты в каждом направлении
Опция Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен в панель наложения карты. Переопределение этой опции приведет к размещению слоя на другой панели по умолчанию.
attribution String null Строка, отображаемая в элементе управления атрибуцией, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридическим обязательством перед правообладателями и поставщиками тайлов.

События

Событие Данные Описание
update Event Срабатывает, когда рендерер обновляет свои границы, центр и масштаб, например, когда карта перемещена
Событие Данные Описание
add Event Срабатывает после добавления слоя на карту
remove Event Срабатывает после удаления слоя с карты
Событие Данные Описание
popupopen PopupEvent Срабатывает при открытии всплывающего окна, связанного с этим слоем
popupclose PopupEvent Срабатывает при закрытии всплывающего окна, связанного с этим слоем
Событие Данные Описание
tooltipopen TooltipEvent Срабатывает при открытии всплывающей подсказки, связанной с этим слоем.
tooltipclose TooltipEvent Срабатывает при закрытии всплывающей подсказки, связанной с этим слоем.

Методы

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup

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> propagate?) Boolean

Возвращает true, если для определенного типа события есть какие-либо присоединенные слушатели. Проверка может быть необязательно распространена, она вернет 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?, <Object> options?) Создаёт группу слоёв, необязательно с начальным набором слоёв и объектом options.

Параметры

Параметр Тип Значение по умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет действовать как часть базовой карты.
bubblingMouseEvents Boolean true Когда true, событие мыши на этом слое вызовет то же событие на карте (если не используется L.DomEvent.stopPropagation).
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на слой перекрытия карты. Переопределение этого параметра разместит слой на другом слое по умолчанию.
attribution String null Строка, отображаемая в элементе сведений об авторских правах, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридическим обязательством по отношению к правообладателям и поставщикам тайлов.

События

Событие Данные Описание
click MouseEvent Вызывается, когда пользователь щелкает (или нажимает) слой.
dblclick MouseEvent Вызывается, когда пользователь дважды щелкает (или дважды нажимает) слой.
mousedown MouseEvent Вызывается, когда пользователь нажимает кнопку мыши на слое.
mouseup MouseEvent Вызывается, когда пользователь отпускает кнопку мыши, нажатую на слое.
mouseover MouseEvent Вызывается, когда курсор мыши попадает на слой.
mouseout MouseEvent Вызывается, когда курсор мыши выходит со слоя.
contextmenu MouseEvent Вызывается, когда пользователь щелкает правой кнопкой мыши на слое. Блокирует отображение стандартного контекстного меню браузера, если есть слушатели на этом событии. Также вызывается на мобильных устройствах, когда пользователь удерживает одно касание в течение секунды (также называется длительным нажатием).
Событие Данные Описание
add Event Вызывается после добавления слоя на карту
remove Event Вызывается после удаления слоя с карты
Событие Данные Описание
popupopen PopupEvent Вызывается при открытии всплывающего окна, привязанного к этому слою
popupclose PopupEvent Вызывается при закрытии всплывающего окна, привязанного к этому слою
Событие Данные Описание
tooltipopen TooltipEvent Вызывается при открытии всплывающей подсказки, привязанной к этому слою.
tooltipclose TooltipEvent Вызывается при закрытии всплывающей подсказки, привязанной к этому слою.

Методы

Метод Возвращает Описание
toGeoJSON(<Number|false> precision?) Object

Значения координат округляются с помощью функции formatNum с заданным precision. Возвращает представление группы слоев в формате GeoJSON (как GeoJSON FeatureCollection, GeometryCollection, или MultiPoint).

addLayer(<Layer> layer) this

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

removeLayer(<Layer> layer) this

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

removeLayer(<Number> id) this

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

hasLayer(<Layer> layer) Boolean

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

hasLayer(<Number> id) Boolean

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

clearLayers() this

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

invoke(<String> methodName, …) this

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

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

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

group.eachLayer(function (layer) {
	layer.bindPopup('Hello');
});
getLayer(<Number> id) Layer

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

getLayers() Layer[]

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

setZIndex(<Number> zIndex) this

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

getLayerId(<Layer> layer) Number

Возвращает внутренний идентификатор слоя

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup

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> propagate?) Boolean

Возвращает true , если для определенного типа события есть какие-либо присоединенные к нему слушатели. Проверка может быть необязательно распространена, она вернёт 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?, <Object> options?) Создает группу объектов, необязательно задавая начальный набор слоев и объект options.

Параметры

Параметр Тип По умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет действовать как часть базовой карты.
bubblingMouseEvents Boolean true Когда true, событие мыши на этом слое вызовет то же событие на карте (если не используется L.DomEvent.stopPropagation).
Параметр Тип По умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен в панель наложения карты. Переопределение этого параметра приведет к размещению слоя по умолчанию на другой панели.
attribution String null Строка, отображаемая в элементе управления атрибутами, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридическим обязательством по отношению к держателям авторских прав и поставщикам тайлов.

События

Событие Данные Описание
layeradd LayerEvent Вызывается при добавлении слоя к этому FeatureGroup
layerremove LayerEvent Вызывается при удалении слоя из этого FeatureGroup
Событие Данные Описание
click MouseEvent Вызывается при щелчке (или нажатии) пользователя на слой.
dblclick MouseEvent Вызывается при двойном щелчке (или двойном нажатии) пользователя на слой.
mousedown MouseEvent Вызывается при нажатии пользователем кнопки мыши на слой.
mouseup MouseEvent Вызывается при отпускании пользователем кнопки мыши, нажатой на слой.
mouseover MouseEvent Вызывается при входе курсора мыши в слой.
mouseout MouseEvent Вызывается при выходе курсора мыши из слоя.
contextmenu MouseEvent Вызывается при правом щелчке пользователя на слое, предотвращает отображение стандартного контекстного меню браузера, если есть слушатели на этом событии. Также вызывается на мобильных устройствах, когда пользователь удерживает одно касание в течение секунды (также называется удержанием).
Событие Данные Описание
add Event Вызывается после добавления слоя на карту
remove Event Вызывается после удаления слоя с карты
Событие Данные Описание
popupopen PopupEvent Вызывается при открытии всплывающего окна, связанного с этим слоем
popupclose PopupEvent Вызывается при закрытии всплывающего окна, связанного с этим слоем
Событие Данные Описание
tooltipopen TooltipEvent Вызывается при открытии всплывающей подсказки, связанной с этим слоем.
tooltipclose TooltipEvent Вызывается при закрытии всплывающей подсказки, связанной с этим слоем.

Методы

Метод Возвращает Описание
setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

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

getBounds() LatLngBounds

Возвращает LatLngBounds группы объектов (созданной из границ и координат её дочерних элементов).

Метод Возвращает Описание
toGeoJSON(<Number|false> precision?) Object

Значения координат округляются с помощью функции formatNum с заданным precision. Возвращает представление группы слоёв в формате GeoJSON (в виде GeoJSON FeatureCollection, GeometryCollection, или MultiPoint).

addLayer(<Layer> layer) this

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

removeLayer(<Layer> layer) this

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

removeLayer(<Number> id) this

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

hasLayer(<Layer> layer) Boolean

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

hasLayer(<Number> id) Boolean

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

clearLayers() this

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

invoke(<String> methodName, …) this

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

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

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

group.eachLayer(function (layer) {
	layer.bindPopup('Hello');
});
getLayer(<Number> id) Layer

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

getLayers() Layer[]

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

setZIndex(<Number> zIndex) this

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

getLayerId(<Layer> layer) Number

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из данной LayerGroup

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> propagate?) Boolean

Возвращает true , если для определенного типа события есть прикрепленные обработчики. Проверка может необязательно распространяться, она вернет 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.
markersInheritOptions Boolean false Наследуют ли маркеры по умолчанию для объектов типа "Point" параметры группы.
Параметр Тип Значение по умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет действовать как часть основной карты.
bubblingMouseEvents Boolean true Когда true, событие мыши на этом слое сработает и на карте (если не используется L.DomEvent.stopPropagation).
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на слой overlay pane карты. Переопределение этого параметра приведет к размещению слоя на другом слое по умолчанию.
attribution String null Строка, отображаемая в элементе управления подписями, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является правовой обязанностью перед правообладателями и поставщиками тайлов.

События

Событие Данные Описание
layeradd LayerEvent Вызывается при добавлении слоя в этот FeatureGroup
layerremove LayerEvent Вызывается при удалении слоя из этого FeatureGroup
Событие Данные Описание
click MouseEvent Вызывается при нажатии пользователем на слой.
dblclick MouseEvent Вызывается при двойном нажатии пользователем на слой.
mousedown MouseEvent Вызывается при нажатии пользователем кнопки мыши на слой.
mouseup MouseEvent Вызывается при отпускании пользователем кнопки мыши, нажатой на слой.
mouseover MouseEvent Вызывается при входе курсора мыши в слой.
mouseout MouseEvent Вызывается при выходе курсора мыши из слоя.
contextmenu MouseEvent Вызывается при правом щелчке пользователя на слое, предотвращает отображение контекстного меню браузера по умолчанию, если есть обработчики этого события. Также вызывается на мобильных устройствах, когда пользователь удерживает одно касание в течение секунды (также называется длинным нажатием).
Событие Данные Описание
add Event Вызывается после добавления слоя на карту
remove Event Вызывается после удаления слоя с карты
Событие Данные Описание
popupopen PopupEvent Вызывается при открытии всплывающей подсказки, привязанной к этому слою.
popupclose PopupEvent Вызывается при закрытии всплывающей подсказки, привязанной к этому слою.
Событие Данные Описание
tooltipopen TooltipEvent Вызывается при открытии подсказки, привязанной к этому слою.
tooltipclose TooltipEvent Вызывается при закрытии подсказки, привязанной к этому слою.

Методы

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

Добавляет объект GeoJSON в слой.

resetStyle(layer?) this

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

setStyle(style) this

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

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

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

bringToBack() this

Отправляет группу слоев назад за все остальные слои.

getBounds() LatLngBounds

Возвращает LatLngBounds группы объектов (созданный из границ и координат её дочерних элементов).

Метод Возвращает Описание
toGeoJSON(<Number|false> precision?) Object

Координаты округляются с помощью функции formatNum с заданным precision. Возвращает представление группы слоёв в формате GeoJSON (как GeoJSON FeatureCollection, GeometryCollection, или MultiPoint).

addLayer(<Layer> layer) this

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

removeLayer(<Layer> layer) this

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

removeLayer(<Number> id) this

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

hasLayer(<Layer> layer) Boolean

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

hasLayer(<Number> id) Boolean

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

clearLayers() this

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

invoke(<String> methodName, …) this

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

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

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

group.eachLayer(function (layer) {
	layer.bindPopup('Hello');
});
getLayer(<Number> id) Layer

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

getLayers() Layer[]

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

setZIndex(<Number> zIndex) this

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

getLayerId(<Layer> layer) Number

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup.

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> propagate?) Boolean

Возвращает true, если для конкретного типа события прикреплены какие-либо слушатели. Проверка может быть необязательно распространена, она вернёт 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|false> precision?) Array Обратная функция coordsToLatLng. Значения координат округляются с помощью функции formatNum.
latLngsToCoords(<Array> latlngs, <Number> levelsDeep?, <Boolean> closed?, <Number|false> precision?) Array Обратная функция coordsToLatLngs. closed определяет, следует ли добавлять первую точку в конец массива для закрытия геообъекта, используется только когда levelsDeep равно 0. По умолчанию ложь. Значения координат округляются с помощью функции formatNum.
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) Загружать новые тайлы только после завершения панорамирования. true по умолчанию в мобильных браузерах, чтобы избежать слишком большого количества запросов и сохранить плавную навигацию. false в противном случае, чтобы отображать новые тайлы во время панорамирования, так как легко выйти за пределы значения keepBuffer в браузерах настольных компьютеров.
updateWhenIdle Boolean (depends) По умолчанию плавная анимация масштабирования (во время масштабирования касанием или 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 Строка, отображаемая в блоке авторских прав, например, «© OpenStreetMap contributors». Она описывает данные слоя и часто является юридической обязанностью по отношению к правообладателям и поставщикам тайлов.

События

Событие Данные Описание
loading Event Вызывается при начале загрузки тайлов слоем сетки.
tileunload TileEvent Вызывается, когда тайл удаляется (например, когда тайл выходит за пределы экрана).
tileloadstart TileEvent Вызывается, когда тайл запрашивается и начинает загружаться.
tileerror TileErrorEvent Вызывается, когда происходит ошибка при загрузке тайла.
tileload TileEvent Вызывается, когда тайл загружается.
load Event Вызывается, когда слой сетки загрузил все видимые тайлы.
Событие Данные Описание
add Event Вызывается после добавления слоя на карту
remove Event Вызывается после удаления слоя с карты
Событие Данные Описание
popupopen PopupEvent Вызывается при открытии всплывающего окна, привязанного к этому слою
popupclose PopupEvent Вызывается при закрытии всплывающего окна, привязанного к этому слою
Событие Данные Описание
tooltipopen TooltipEvent Вызывается при открытии подсказки, привязанной к этому слою.
tooltipclose TooltipEvent Вызывается при закрытии подсказки, привязанной к этому слою.

Методы

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

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

bringToBack() this

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

getContainer() HTMLElement

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

setOpacity(<Number> opacity) this

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

setZIndex(<Number> zIndex) this

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

isLoading() Boolean

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

redraw() this

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

getTileSize() Point

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

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

Слои, расширяющие GridLayer, должны переопределить следующий метод.
Метод Возвращаемое значение Описание
createTile(<Object> coords, <Function> done?) HTMLElement

Вызывается только во внутренней части, должен быть переопределен классами, расширяющими GridLayer. Возвращает HTMLElement , соответствующий заданному coords. Если задан обратный вызов done, он должен быть вызван, когда тайл завершит загрузку и отрисовку.

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup.

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> propagate?) Boolean

Возвращает true, если для определенного типа события есть какие-либо привязанные обработчики. Проверка может быть необязательно распространена, она вернёт 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));

Обратите внимание, что LatLng не наследуется от объекта Class Leaflet, что означает, что новые классы не могут наследовать от него, и новые методы не могут быть добавлены к нему с помощью функции include.

Создание

Фабрика Описание
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 Широта в градусах
lng Number Долгота в градусах
alt Number Высота в метрах (необязательно)

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] градусов.

Обратите внимание, что LatLngBounds не наследуется от объекта Leaflet Class, что означает, что новые классы не могут наследовать от него, и новые методы не могут быть добавлены к нему с помощью функции include.

Создание

Фабрика Описание
L.latLngBounds(<LatLng> corner1, <LatLng> corner2) Создает объект LatLngBounds путем определения двух диагонально противоположных углов прямоугольника.
L.latLngBounds(<LatLng[]> latlngs) Создает объект LatLngBounds, определенный географическими точками, которые он содержит. Очень полезно для масштабирования карты так, чтобы она соответствовала определенному набору расположений с помощью fitBounds.

Методы

Метод Возвращает Описание
extend(<LatLng> latlng) this

Расширить границы для охвата данной точки

extend(<LatLngBounds> otherBounds) this

Расширить границы для охвата заданных границ

pad(<Number> bufferRatio) LatLngBounds

Возвращает границы, созданные путем расширения или сужения текущих границ на заданное отношение в каждом направлении. Например, отношение 0,5 расширяет границы на 50% в каждом направлении. Отрицательные значения сужают границы.

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(<LatLngBounds> otherBounds) Boolean

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

toBBoxString() String

Возвращает строку с координатами ограничивающего прямоугольника в формате 'southwest_lng,southwest_lat,northeast_lng,northeast_lat'. Полезно для отправки запросов в веб-службы, возвращающие геоданные.

equals(<LatLngBounds> otherBounds, <Number> maxMargin?) Boolean

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

isValid() Boolean

Возвращает true если границы должным образом инициализированы.

Точка

Представляет точку с x и y координатами в пикселях.

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

var point = L.point(200, 300);

Все методы и параметры Leaflet, принимающие объекты Point, также принимают их в простом формате массива (если не указано иное), поэтому эти строки эквивалентны:

map.panBy([200, 300]);
map.panBy(L.point(200, 300));

Обратите внимание, что Point не наследуется от объекта Leaflet Class, что означает, что новые классы не могут наследовать от него, и новые методы не могут быть добавлены к нему с помощью функции include.

Создание

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

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

trunc() Point

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

distanceTo(<Point> otherPoint) Number

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

equals(<Point> otherPoint) Boolean

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

contains(<Point> otherPoint) Boolean

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

toString() String

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

Свойства

Свойство Тип Описание
x Number Координата x точки
y Number Координата y точки

Границы

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

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

var p1 = L.point(10, 10),
p2 = L.point(40, 60),
bounds = L.bounds(p1, p2);

Все методы Leaflet, принимающие объекты Bounds, также принимают их в простом формате массива (если не указано иное), поэтому пример границ выше можно передать так:

otherBounds.intersects([[10, 10], [40, 60]]);

Обратите внимание, что Bounds не наследуется от объекта Class Leaflet, что означает, что новые классы не могут наследоваться от него, и новые методы не могут быть добавлены к нему с помощью функции include.

Создание

Фабрика Описание
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 Верхний левый угол прямоугольника.
max Point Нижний правый угол прямоугольника.

Значок

Представляет значок для использования при создании маркера.

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

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 [0, 0] Координаты точки, с которой «открываются» всплывающие подсказки, относительно якоря значка.
tooltipAnchor Point [0, 0] Координаты точки, с которой «открываются» подсказки, относительно якоря значка.
shadowUrl String null URL изображения тени значка. Если не указано, изображение тени не будет создано.
shadowRetinaUrl String null
shadowSize Point null Размер изображения тени в пикселях.
shadowAnchor Point null Координаты «кончика» тени (относительно ее верхнего левого угла) (такие же, как iconAnchor, если не указаны).
className String '' Пользовательское имя класса для присвоения изображениям значка и тени. По умолчанию пусто.
crossOrigin Boolean|String false Добавлять ли атрибут crossOrigin к тайлам. Если указана строка, атрибут crossOrigin всех тайлов будет установлен на предоставленную строку. Это необходимо, если вы хотите получить доступ к пиксельным данным тайла. Обратитесь к настройкам CORS для допустимых значений строк.

Методы

Метод Возвращает Описание
createIcon(<HTMLElement> oldIcon?) HTMLElement

Вызывается внутри, когда необходимо отобразить значок, возвращает элемент HTML <img> стилизованный в соответствии с параметрами.

createShadow(<HTMLElement> oldIcon?) HTMLElement

Как createIcon, но для тени под ним.

Значок.По умолчанию

Тривиальный подкласс 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|HTMLElement '' Пользовательский код HTML для вставки в элемент div, по умолчанию пустой. В качестве альтернативы, экземпляр HTMLElement.
bgPos Point [0, 0] Необязательное относительное положение фона, в пикселях
Параметр Тип Значение по умолчанию Описание
iconUrl String null (обязательно) URL изображения значка (абсолютный или относительно пути к вашему скрипту).
iconRetinaUrl String null URL изображения значка высокой чёткости (абсолютный или относительно пути к вашему скрипту). Используется для устройств с экранами Retina.
iconSize Point null Размер изображения значка в пикселях.
iconAnchor Point null Координаты «кончика» значка (относительно его верхнего левого угла). Значок будет выровнен так, чтобы эта точка находилась в географическом положении маркера. По умолчанию центрирован, если размер задан, также может быть задан в CSS с отрицательными отступами.
popupAnchor Point [0, 0] Координаты точки, с которой «открываются» всплывающие окна, относительно якоря значка.
tooltipAnchor Point [0, 0] Координаты точки, с которой «открываются» подсказки, относительно якоря значка.
shadowUrl String null URL изображения тени значка. Если не указано, изображение тени не будет создано.
shadowRetinaUrl String null
shadowSize Point null Размер изображения тени в пикселях.
shadowAnchor Point null Координаты «кончика» тени (относительно её верхнего левого угла) (то же, что и iconAnchor, если не указано).
className String '' Пользовательское имя класса, которое будет присвоено и значку, и изображению тени. По умолчанию пусто.
crossOrigin Boolean|String false Добавлять ли атрибут crossOrigin к тайлам. Если указана строка, все тайлы получат атрибут crossOrigin, установленный в указанную строку. Это необходимо, если вы хотите получить доступ к пикселям тайла. Обратитесь к Настройкам CORS для получения допустимых значений строк.

Методы

Метод Возвращает Описание
createIcon(<HTMLElement> oldIcon?) HTMLElement

Вызывается внутри, когда необходимо отобразить значок, возвращает элемент HTML <img> стилизованный в соответствии с параметрами.

createShadow(<HTMLElement> oldIcon?) HTMLElement

Как createIcon, но для тени под ним.

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

Основное управление масштабом с двумя кнопками (увеличение и уменьшение). Оно добавляется к карте по умолчанию, если вы не установите параметр zoomControl в false. Расширяет Control.

Создание

Фабрика Описание
L.control.zoom(<Control.Zoom options> options) Создаёт управление масштабом

Параметры

Параметр Тип Значение по умолчанию Описание
zoomInText String '<span aria-hidden="true">+</span>' Текст, установленный на кнопке «увеличить».
zoomInTitle String 'Zoom in' Заголовок, установленный на кнопке «увеличить».
zoomOutText String '<span aria-hidden="true">&#x2212;</span>' Текст, установленный на кнопке «уменьшить».
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|false 'Leaflet' Текст HTML, отображаемый перед атрибуциями. Передайте false для отключения.
Опция Тип Значение по умолчанию Описание
position String 'topright' Положение элемента управления (один из углов карты). Возможные значения: 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

Метод Возвращает Описание
setPrefix(<String|false> prefix) this

Текст HTML, отображаемый перед атрибутами. Используйте false для отключения.

addAttribution(<String> text) this

Добавляет текст атрибуции (например, 'Vector data &copy; Mapbox').

removeAttribution(<String> text) this

Удаляет текст атрибуции.

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

Возвращает положение элемента управления.

setPosition(<string> position) this

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

getContainer() HTMLElement

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

addTo(<Map> map) this

Добавляет элемент управления на указанную карту.

remove() this

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

Control.Layers

Элемент управления слоями позволяет пользователям переключаться между различными базовыми слоями и включать/выключать наложения (см. подробный пример). Расширяет Control.

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

var baseLayers = {
	"Mapbox": mapbox,
	"OpenStreetMap": osm
};

var overlays = {
	"Marker": marker,
	"Roads": roadsLayer
};

L.control.layers(baseLayers, overlays).addTo(map);

Параметры baseLayers и overlays представляют собой литералы объектов со именами слоёв в качестве ключей и объектами Layer в качестве значений:

{
    "<someName1>": layer1,
    "<someName2>": layer2
}

Имена слоев могут содержать HTML, что позволяет добавлять дополнительное форматирование элементов:

{"<img src='my-layer-icon' /> <span class='my-layer-item'>My Layer</span>": myLayer}

Создание

Фабрика Описание
L.control.layers(<Object> baselayers?, <Object> overlays?, <Control.Layers options> options?) Создает элемент управления слоями с заданными слоями. Базовые слои будут переключаться с помощью радиокнопок, а наложения — с помощью флажков. Обратите внимание, что все базовые слои должны быть переданы в объекте baseLayers, но только один должен быть добавлен на карту во время инициализации карты.

Опции

Опция Тип Значение по умолчанию Описание
collapsed Boolean true Если true, элемент управления будет свернут в значок и развернётся при наведении курсора, касании или активации с помощью клавиатуры.
autoZIndex Boolean true Если true, элемент управления присвоит z-индексы слоям в порядке возрастания, чтобы порядок сохранялся при включении/выключении слоёв.
hideSingleBase Boolean false Если true, базовые слои в элементе управления будут скрыты, если их только один.
sortLayers Boolean false Сортировать ли слои. Если false, слои сохранят порядок, в котором они были добавлены в элемент управления.
sortFunction Function * Функция сравнения , которая будет использоваться для сортировки слоев, когда sortLayers равно true. Функция получает экземпляры L.Layer и их имена, как в sortFunction(layerA, layerB, nameA, nameB). По умолчанию она сортирует слои по имени в алфавитном порядке.
Опция Тип Значение по умолчанию Описание
position String 'topright' Положение элемента управления (один из углов карты). Возможные значения: 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

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

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

addOverlay(<Layer> layer, <String> name) this

Добавляет наложение (элемент флажка) с заданным именем в элемент управления.

removeLayer(<Layer> layer) this

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

expand() this

Развернуть элемент управления, если он свёрнут.

collapse() this

Свернуть элемент управления, если он развернут.

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

Возвращает положение элемента управления.

setPosition(<string> position) this

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

getContainer() HTMLElement

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

addTo(<Map> map) this

Добавляет элемент управления на указанную карту.

remove() this

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

Control.Scale

Простой элемент управления масштабом, отображающий масштаб текущего центра экрана в метрической (м/км) и имперской (ми/футы) системах. Расширяет Control.

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

L.control.scale().addTo(map);

Создание

Фабрика Описание
L.control.scale(<Control.Scale options> options?) Создаёт элемент управления масштабом с заданными параметрами.

Опции

Опция Тип Значение по умолчанию Описание
maxWidth Number 100 Максимальная ширина элемента управления в пикселях. Ширина динамически устанавливается для отображения круглых значений (например, 100, 200, 500).
metric Boolean True Отображать ли метрическую шкалу (м/км).
imperial Boolean True Отображать ли имперскую шкалу (ми/футы).
updateWhenIdle Boolean false Если true, элемент управления обновляется при moveend, в противном случае он всегда обновлён (обновляется при move).
Опция Тип Значение по умолчанию Описание
position String 'topright' Положение элемента управления (один из углов карты). Возможные значения: 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

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

Возвращает положение элемента управления.

setPosition(<string> position) this

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

getContainer() HTMLElement

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

addTo(<Map> map) this

Добавляет элемент управления на указанную карту.

remove() this

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

Браузер

Пространство имён со статическими свойствами для обнаружения браузера/функций, используемое Leaflet внутри.

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

if (L.Browser.ielt9) {
  alert('Upgrade your browser, dude!');
}

Свойства

Свойство Тип Описание
ie Boolean true для всех версий Internet Explorer (кроме Edge).
ielt9 Boolean true для версий Internet Explorer меньше 9.
edge Boolean true для веб-браузера Edge.
webkit Boolean; true для браузеров на основе webkit, таких как Chrome и Safari (включая мобильные версии).
android Boolean Устарело. true для любого браузера, работающего на платформе Android.
android23 Boolean Устарело. true для браузеров, работающих на Android 2 или Android 3.
androidStock Boolean Устарело. true для браузера по умолчанию на Android (т.е. не Chrome).
opera Boolean true для браузера Opera.
chrome Boolean true для браузера Chrome.
gecko Boolean true для браузеров на основе gecko, таких как Firefox.
safari Boolean true для браузера Safari.
opera12 Boolean true для браузера Opera, поддерживающего преобразования CSS (версия 12 или более поздняя).
win Boolean true когда браузер работает на платформе Windows.
ie3d Boolean true для всех версий Internet Explorer, поддерживающих преобразования CSS.
webkit3d Boolean true для браузеров на основе webkit, поддерживающих преобразования CSS.
gecko3d Boolean true для браузеров на основе gecko, поддерживающих преобразования CSS.
any3d Boolean true для всех браузеров, поддерживающих преобразования CSS.
mobile Boolean true для всех браузеров, работающих на мобильном устройстве.
mobileWebkit Boolean true для всех браузеров на основе webkit на мобильном устройстве.
mobileWebkit3d Boolean true для всех браузеров на основе webkit на мобильном устройстве, поддерживающих преобразования CSS.
msPointer Boolean true для браузеров, реализующих модель событий Microsoft для сенсорного ввода (в частности, IE10).
pointer Boolean true для всех браузеров, поддерживающих события указателя.
touchNative Boolean true для всех браузеров, поддерживающих события касания. Это не обязательно означает, что браузер работает на компьютере с сенсорным экраном, это только означает, что браузер способен понимать события касания.
touch Boolean true для всех браузеров, поддерживающих события касания или указателя. Примечание: события указателя будут предпочтительны (если доступны) и обработаны для всех touch* обработчиков.
mobileOpera Boolean true для браузера Opera на мобильном устройстве.
mobileGecko Boolean true для браузеров на основе gecko, работающих на мобильном устройстве.
retina Boolean true для браузеров на экранах с высоким разрешением «ретина» или на любых экранах, когда масштабирование отображения браузера превышает 100%.
passiveEvents Boolean true для браузеров, поддерживающих пассивные события.
canvas Boolean true когда браузер поддерживает <canvas>.
svg Boolean true когда браузер поддерживает SVG.
vml Boolean true если браузер поддерживает 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|false> precision?) Number Возвращает число num, округлённое до заданного precision. Значение по умолчанию для precision — 6 десятичных знаков. false может быть передано для пропуска обработки (может быть полезно для избежания ошибок округления).
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 Последний уникальный идентификатор, используемый функцией stamp()
emptyImageUrl String Строка URI данных, содержащая базовый 64-битный код пустого GIF-изображения. Используется как хак для освобождения памяти от неиспользуемых изображений на мобильных устройствах с WebKit (путем установки свойства изображения src в эту строку).

Преобразование

Представляет аффинное преобразование: набор коэффициентов 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[] Радикально уменьшает количество точек в полилинии, сохраняя её форму, и возвращает новый массив упрощённых точек, используя алгоритм Рамера-Даугеса-Пекера. Используется для значительного повышения производительности при обработке/отображении полилиний 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 прямоугольными границами с использованием алгоритма Кохена-Сазерленда (непосредственно изменяя точки отрезка!). Используется Leaflet для отображения только точек полилиний, находящихся на экране или рядом, что повышает производительность.
isFlat(<LatLng[]> latlngs) Boolean Возвращает true, если latlngs является плоским массивом, false — вложенным.

PolyUtil

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

Функции

Функция Возвращает Описание
clipPolygon(<Point[]> points, <Bounds> bounds, <Boolean> round?) Point[] Обрезает геометрию полигона, определяемую заданным points заданными границами (с использованием алгоритма Сазерленда-Ходгмена). Используется 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 Удаляет ранее добавленную функцию-слушатель. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off для удаления слушателя.
off(<HTMLElement> el, <Object> eventMap, <Object> context?) this Удаляет набор пар тип/слушатель, например {click: onClick, mousemove: onMouseMove}
off(<HTMLElement> el, <String> types) this Удаляет все ранее добавленные слушатели заданных типов.
off(<HTMLElement> el) this Удаляет все ранее добавленные слушатели из данного HTMLElement
stopPropagation(<DOMEvent> ev) this Остановить распространение данного события до родительских элементов. Используется внутри функций-слушателей:
L.DomEvent.on(div, 'click', function (ev) {
	L.DomEvent.stopPropagation(ev);
});
disableScrollPropagation(<HTMLElement> el) this Добавляет stopPropagation к событиям 'wheel' элемента (плюс варианты браузера).
disableClickPropagation(<HTMLElement> el) this Добавляет stopPropagation к событиям 'click', 'dblclick', 'contextmenu', 'mousedown' и 'touchstart' элемента (плюс варианты браузера).
preventDefault(<DOMEvent> ev) this Предотвращает стандартное действие события DOM ev (например, перехода по ссылке в href элемента a или отправки POST-запроса с перезагрузкой страницы при отправке <form>). Используется внутри функций-слушателей.
stop(<DOMEvent> 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.
getSizedParentNode(<HTMLElement> el) HTMLElement Ищет ближайший родительский узел, размер (ширина и высота) которого не равен null.
getScale(<HTMLElement> el) Object Вычисляет текущее значение масштаба CSS, применённого к элементу. Возвращает объект с x и y членами в качестве горизонтального и вертикального масштабов соответственно, а также boundingClientRect в качестве результата getBoundingClientRect().

Свойства

Свойство Тип Описание
TRANSFORM String Имя стиля трансформации с префиксом вендора (например, 'webkitTransform' для WebKit).
TRANSITION String Имя стиля перехода с префиксом вендора.
TRANSITION_END String Имя события transitionend с префиксом вендора.

PosAnimation

Используется внутри для анимации перемещения, используя CSS3-переходы для современных браузеров и таймер для IE6-9.

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

var fx = new L.PosAnimation();
fx.run(el, [300, 500], 0.5);

Конструктор

Конструктор Описание
L.PosAnimation() Создаёт объект PosAnimation.

События

Событие Данные Описание
start Event Вызывается при начале анимации
step Event Вызывается непрерывно во время анимации.
end Event Вызывается по завершении анимации.

Методы

Метод Возвращаемое значение Описание
run(<HTMLElement> el, <Point> newPos, <Number> duration?, <Number> easeLinearity?)

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

stop()

Останавливает анимацию (если она выполняется).

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type, <Boolean> propagate?) Boolean

Возвращает true если для определенного типа события есть какие-либо прикрепленные обработчики. Проверка может необязательно распространяться, она вернёт 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 Вызывается, когда перетаскивание собирается начаться.
dragstart Event Вызывается при начале перетаскивания
predrag Event Вызывается непрерывно во время перетаскивания перед каждым соответствующим обновлением положения элемента.
drag Event Вызывается непрерывно во время перетаскивания.
dragend DragEndEvent Вызывается при завершении перетаскивания.

Методы

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

Возвращает true, если для определенного типа события есть прикрепленные обработчики. Проверка может быть необязательно распространена, она вернет 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 Добавляет обработчик конструктора в класс.

Evented

Набор методов, общих для классов, работающих с событиями (например, 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> propagate?) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

Слой

Набор методов из базового класса Layer, которые используются всеми слоями Leaflet. Наследует все методы, опции и события от L.Evented.

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

var layer = L.marker(latlng).addTo(map);
layer.addTo(map);
layer.remove();

Опции

Опция Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на вкладку overlay pane карты. Переопределение этой опции поместит слой на другую вкладку по умолчанию.
attribution String null Строка, отображаемая в элементе управления авторскими правами, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридической обязанностью перед правообладателями и поставщиками плиток.

События

Событие Данные Описание
add Event Срабатывает после добавления слоя на карту
remove Event Срабатывает после удаления слоя с карты

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

Событие Данные Описание
popupopen PopupEvent Срабатывает при открытии всплывающей подсказки, связанной с этим слоем
popupclose PopupEvent Срабатывает при закрытии всплывающей подсказки, связанной с этим слоем

События подсказки

Событие Данные Описание
tooltipopen TooltipEvent Срабатывает при открытии подсказки, связанной с этим слоем.
tooltipclose TooltipEvent Срабатывает при закрытии подсказки, связанной с этим слоем.

Методы

Классы, расширяющие L.Layer, унаследуют следующие методы:
Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup

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> propagate?) Boolean

Возвращает true, если определённый тип события имеет какие-либо привязанные к нему обработчики. Проверка может быть необязательно распространена, она вернёт 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' По умолчанию слой будет добавлен на панель наложения карты overlay pane. Переопределение этого параметра приведет к тому, что слой по умолчанию будет размещён на другой панели.
attribution String null Строка, которая будет отображаться в контроле атрибутов, например «© OpenStreetMap contributors». Она описывает данные слоя и часто является юридическим обязательством в отношении правообладателей и поставщиков тайлов.

События

События мыши

Событие Данные Описание
click MouseEvent Вызывается при нажатии пользователем (или нажатии) слоя.
dblclick MouseEvent Вызывается при двойном нажатии пользователем (или двойном нажатии) слоя.
mousedown MouseEvent Вызывается при нажатии пользователем кнопки мыши на слое.
mouseup MouseEvent Вызывается при отпускании пользователем нажатой кнопки мыши на слое.
mouseover MouseEvent Вызывается при входе курсора мыши в слой.
mouseout MouseEvent Вызывается при выходе курсора мыши из слоя.
contextmenu MouseEvent Вызывается при правом щелчке мышью на слое, предотвращает отображение контекстного меню браузера по умолчанию, если есть обработчики на этом событии. Также вызывается на мобильных устройствах, когда пользователь удерживает одно касание в течение секунды (также называется длительным нажатием).
Событие Данные Описание
add Event Срабатывает после добавления слоя на карту
remove Event Срабатывает после удаления слоя с карты
Событие Данные Описание
popupopen PopupEvent Срабатывает при открытии всплывающего окна, связанного с этим слоем
popupclose PopupEvent Срабатывает при закрытии всплывающего окна, связанного с этим слоем
Событие Данные Описание
tooltipopen TooltipEvent Срабатывает при открытии подсказки, связанной с этим слоем.
tooltipclose TooltipEvent Срабатывает при закрытии подсказки, связанной с этим слоем.

Методы

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup

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> propagate?) Boolean

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

Вызывается при отключении обработчика, должен удалить обработчики событий, добавленные ранее.

Функции

Существует статическая функция, которую можно вызвать без создания экземпляра L.Handler:

Функция Возвращает Описание
addTo(<Map> map, <String> name) this Добавляет новый обработчик на заданную карту с заданным именем.

Проекция

Объект с методами для проекции географических координат мира на плоскую поверхность (и обратно). См. Проекция карты.

Методы

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

Проецирует географические координаты в 2D точку. Принимает только экземпляры L.LatLng, а не массивы.

unproject(<Point> point) LatLng

Обратное преобразование project. Проецирует 2D точку в географическое местоположение. Принимает только экземпляры L.Point, а не массивы.

Обратите внимание, что экземпляры проекций не наследуются от объекта Leaflet's Class и не могут быть созданы. Кроме того, новые классы не могут наследовать от них, и методы не могут быть добавлены к ним с помощью функции include.

Свойства

Свойство Тип Описание
bounds Bounds Границы (указанные в единицах CRS), в которых проекция действительна

Определенные проекции

Leaflet поставляется с набором уже определённых проекций:
Проекция Описание
L.Projection.LonLat Прямоугольная или проекция Ламберта — самая простая проекция, которую в основном используют специалисты по ГИС. Прямо отображает x как долготу и y как широту. Подходит также для плоских миров, например, игровых карт. Используется CRS EPSG:4326 и Simple
L.Projection.Mercator Эллиптическая проекция Меркатора — более сложная, чем сферическая проекция Меркатора. Предполагает, что Земля является эллипсоидом. Используется в CRS EPSG:3395.
L.Projection.SphericalMercator Сферическая проекция Меркатора — наиболее распространённая проекция для онлайн-карт, используемая почти всеми бесплатными и коммерческими поставщиками плиток. Предполагает, что Земля является сферой. Используется в CRS EPSG:3857

CRS

Методы

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

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

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

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

project(<LatLng> latlng) Point

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

unproject(<Point> point) LatLng

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

scale(<Number> zoom) Number

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

zoom(<Number> scale) Number

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

getProjectedBounds(<Number> zoom) Bounds

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

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

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

wrapLatLng(<LatLng> latlng) LatLng

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

wrapLatLngBounds(<LatLngBounds> bounds) LatLngBounds

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

Свойства

Свойство Тип Описание
code String Стандартное кодовое имя CRS, передаваемое в службы WMS (например, 'EPSG:3857')
wrapLng Number[] Массив из двух чисел, определяющих, обертывается ли ось долготы (горизонтальная) вокруг заданного диапазона и как. По умолчанию [-180, 180] в большинстве географических CRS. Если undefined, ось долготы не обертывается.
wrapLat Number[] Как wrapLng, но для оси широты (вертикальной).
infinite Boolean Если true, координатное пространство будет неограниченным (бесконечным по обеим осям)

Определённые CRS

CRS Описание
L.CRS.EPSG3395 Редко используется некоторыми коммерческими поставщиками тайлов. Использует эллиптическую проекцию Меркатора.
L.CRS.EPSG3857 Наиболее распространённый CRS для онлайн-карт, используемый практически всеми бесплатными и коммерческими поставщиками тайлов. Использует сферическую проекцию Меркатора. Устанавливается по умолчанию в опции Map's crs.
L.CRS.EPSG4326 Распространённый CRS среди энтузиастов ГИС. Использует простую проекцию равноугольной конической.

Leaflet 1.0.x соответствует схеме координат TMS для EPSG:4326, что является изменением поведения по сравнению с 0.7.x. Если вы используете TileLayer с этим CRS, убедитесь, что существуют два тайла размером 256x256 пикселей, покрывающих всю Землю на уровне масштаба ноль, и что начало координат тайлов находится в (-180,+90) или (-180,-90) для TileLayer с опцией tms.

L.CRS.Earth Служит основой для CRS, которые являются глобальными, охватывая всю Землю. Может использоваться только как основа для других CRS и не может быть использован непосредственно, так как не имеет code, projection или transformation. distance() возвращает значение в метрах.
L.CRS.Simple Простой CRS, который отображает долготу и широту в x и y напрямую. Может использоваться для карт плоских поверхностей (например, карт игр). Обратите внимание, что ось y всё равно должна быть инвертирована (от нижнего края к верхнему). distance() возвращает просто евклидово расстояние.
L.CRS.Base Объект, определяющий системы координат для проецирования географических точек в пиксельные (экранные) координаты и обратно (и в координаты в других единицах для WMS сервисов). См. систему пространственной привязки.

Leaflet по умолчанию определяет наиболее распространённые CRS. Если вы хотите использовать CRS, не определённый по умолчанию, обратите внимание на плагин Proj4Leaflet.

Обратите внимание, что экземпляры CRS не наследуются от объекта Leaflet's Class и не могут быть созданы. Кроме того, новые классы не могут наследоваться от них, и методы не могут быть добавлены к ним с помощью функции include.

Рендерер

Базовый класс для реализации векторных рендереров (SVG, Canvas). Обрабатывает контейнер DOM рендерера, его границы и анимацию масштабирования.

Рендерер Renderer работает как неявная группа слоёв для всех Path - сам рендерер может быть добавлен или удалён на карте. Все пути используют рендерер, который может быть неявным (карта определит тип рендерера и будет использовать его автоматически) или явным (используя опцию renderer пути).

Не используйте этот класс напрямую, используйте SVG и Canvas вместо него.

Опции

Опция Тип По умолчанию Описание
padding Number 0.1 Насколько нужно расширить область обрезки вокруг представления карты (относительно её размера). Например, 0.1 будет 10% представления карты в каждом направлении
Опция Тип По умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на слой слой наложения карты. Переопределение этой опции приведет к размещению слоя на другом слое по умолчанию.
attribution String null Строка, отображаемая в элементе управления атрибутами, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является обязательством перед правообладателями и поставщиками тайлов.

События

Событие Данные Описание
update Event Срабатывает, когда рендерер обновляет свои границы, центр и масштаб, например, при перемещении карты
Событие Данные Описание
add Event Срабатывает после добавления слоя на карту
remove Event Срабатывает после удаления слоя с карты
Событие Данные Описание
popupopen PopupEvent Срабатывает при открытии всплывающего окна, привязанного к этому слою
popupclose PopupEvent Срабатывает при закрытии всплывающего окна, привязанного к этому слою
Событие Данные Описание
tooltipopen TooltipEvent Срабатывает при открытии всплывающей подсказки, привязанной к этому слою.
tooltipclose TooltipEvent Срабатывает при закрытии всплывающей подсказки, привязанной к этому слою.

Методы

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

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

remove() this

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

removeFrom(<Map> map) this

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

removeFrom(<LayerGroup> group) this

Удаляет слой из заданной LayerGroup

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> propagate?) Boolean

Возвращает true, если для определенного типа события есть какие-либо присоединенные обработчики. Проверка может быть по желанию распространена, она вернёт 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 Тип события (например, 'click').
target Object Объект, который вызвал событие. Для распространяемых событий — последний объект в цепочке распространения, который вызвал событие.
sourceTarget Object Объект, который первоначально вызвал событие. Для несправедливых событий — это то же, что и target.
propagatedFrom Object Для распространяемых событий — последний объект, который распространил событие к своему родителю по событиям.
layer Object Устарело. То же, что и propagatedFrom.

KeyboardEvent

Свойство Тип Описание
originalEvent DOMEvent Исходное событие DOM KeyboardEvent, которое вызвало это событие Leaflet.
Свойство Тип Описание
type String Тип события (например, 'click').
target Object Объект, который вызвал событие. Для распространяемых событий — последний объект в цепочке распространения, который вызвал событие.
sourceTarget Object Объект, который первоначально вызвал событие. Для несправедливых событий — это то же, что и target.
propagatedFrom Object Для распространяемых событий — последний объект, который распространил событие к своему родителю по событиям.
layer Object Устарело. То же, что и propagatedFrom.

MouseEvent

Свойство Тип Описание
latlng LatLng Географическая точка, где произошло событие мыши.
layerPoint Point Координаты пикселей точки, где произошло событие мыши, относительно слоя карты.
containerPoint Point Координаты пикселей точки, где произошло событие мыши, относительно контейнера карты.
originalEvent DOMEvent Исходное событие DOM MouseEvent или DOM TouchEvent, которое вызвало это событие Leaflet.
Свойство Тип Описание
type String Тип события (например, 'click').
target Object Объект, который вызвал событие. Для распространяемых событий — последний объект в цепочке распространения, который вызвал событие.
sourceTarget Object Объект, который первоначально вызвал событие. Для несправедливых событий — это то же, что и target.
propagatedFrom Object Для распространяемых событий — последний объект, который распространил событие к своему родителю по событиям.
layer Object Устарело. То же, что и propagatedFrom.

LocationEvent

Свойство Тип Описание
latlng LatLng Обнаруженное географическое местоположение пользователя.
bounds LatLngBounds Географические границы области, в которой находится пользователь (с учетом точности местоположения).
accuracy Number Точность местоположения в метрах.
altitude Number Высота положения над эллипсоидом WGS84 в метрах.
altitudeAccuracy Number Точность высоты в метрах.
heading Number Направление движения в градусах, отсчитываемое по часовой стрелке от истинного севера.
speed Number Текущая скорость в метрах в секунду.
timestamp Number Время получения позиции.
Свойство Тип Описание
type String Тип события (например, 'click').
target Object Объект, который сгенерировал событие. Для распространяемых событий, последний объект в цепи распространения, который сгенерировал событие.
sourceTarget Object Объект, который изначально сгенерировал событие. Для неспраспространяемых событий, это будет то же самое, что и target.
propagatedFrom Object Для распространяемых событий, последний объект, который распространил событие к его родительскому событию.
layer Object Устаревшее. То же, что и propagatedFrom.

ErrorEvent

Свойство Тип Описание
message String Сообщение об ошибке.
code Number Код ошибки (если применимо).
Свойство Тип Описание
type String Тип события (например, 'click').
target Object Объект, который сгенерировал событие. Для распространяемых событий, последний объект в цепи распространения, который сгенерировал событие.
sourceTarget Object Объект, который изначально сгенерировал событие. Для неспраспространяемых событий, это будет то же самое, что и target.
propagatedFrom Object Для распространяемых событий, последний объект, который распространил событие к его родительскому событию.
layer Object Устаревшее. То же, что и propagatedFrom.

LayerEvent

Свойство Тип Описание
layer Layer Слой, который был добавлен или удалён.
Свойство Тип Описание
type String Тип события (например, 'click').
target Object Объект, который сгенерировал событие. Для распространяемых событий, последний объект в цепи распространения, который сгенерировал событие.
sourceTarget Object Объект, который изначально сгенерировал событие. Для неспраспространяемых событий, это будет то же самое, что и target.
propagatedFrom Object Для распространяемых событий, последний объект, который распространил событие к его родительскому событию.

LayersControlEvent

Свойство Тип Описание
layer Layer Слой, который был добавлен или удален.
name String Имя слоя, который был добавлен или удален.
Свойство Тип Описание
type String Тип события (например, 'click').
target Object Объект, который сгенерировал событие. Для распространяемых событий, последний объект в цепи распространения, который сгенерировал событие.
sourceTarget Object Объект, который изначально сгенерировал событие. Для неспраспространяемых событий, это будет то же самое, что и target.
propagatedFrom Object Для распространяемых событий, последний объект, который распространил событие к его родительскому событию.

TileEvent

Свойство Тип Описание
tile HTMLElement Элемент плитки (изображение).
coords Point Объект точки с координатами плитки: x, y, и z (уровень масштабирования).
Свойство Тип Описание
type String Тип события (например, 'click').
target Object Объект, который сгенерировал событие. Для распространяемых событий, последний объект в цепи распространения, который сгенерировал событие.
sourceTarget Object Объект, который изначально сгенерировал событие. Для неспраспространяемых событий, это будет то же самое, что и target.
propagatedFrom Object Для распространяемых событий, последний объект, который распространил событие к его родительскому событию.
layer Object Устаревшее. То же, что и propagatedFrom.

TileErrorEvent

Свойство Тип Описание
tile HTMLElement Элемент плитки (изображение).
coords Point Объект точки с координатами плитки: x, y, и z (уровень масштабирования).
error * Ошибка, переданная обратной функции плитки done() .
Свойство Тип Описание
type String Тип события (например, 'click').
target Object Объект, который сгенерировал событие. Для распространяемых событий, последний объект в цепи распространения, который сгенерировал событие.
sourceTarget Object Объект, который изначально сгенерировал событие. Для неспраспространяемых событий, это будет то же самое, что и target.
propagatedFrom Object Для распространяемых событий, последний объект, который распространил событие к его родительскому событию.
layer Object Устаревшее. То же, что и propagatedFrom.

ResizeEvent

Свойство Тип Описание
oldSize Point Размер до события изменения размера.
newSize Point Новый размер после события изменения размера.
Свойство Тип Описание
type String Тип события (например, 'click').
target Object Объект, который сгенерировал событие. Для проходящих событий, последний объект в цепочке распространения, который сгенерировал событие.
sourceTarget Object Объект, который изначально сгенерировал событие. Для непроходящих событий, это будет то же самое, что и target.
propagatedFrom Object Для проходящих событий, последний объект, который распространил событие до его родителя-обработчика событий.
layer Object Устаревшее. То же самое, что и propagatedFrom.

GeoJSONEvent

Свойство Тип Описание
layer Layer Слой для геоданных, которые добавляются на карту.
properties Object Свойства геоданных объекта.
geometryType String Тип геометрии геоданных объекта.
id String Идентификатор геоданных объекта (если указан).
Свойство Тип Описание
type String Тип события (например, 'click').
target Object Объект, который сгенерировал событие. Для проходящих событий, последний объект в цепочке распространения, который сгенерировал событие.
sourceTarget Object Объект, который изначально сгенерировал событие. Для непроходящих событий, это будет то же самое, что и target.
propagatedFrom Object Для проходящих событий, последний объект, который распространил событие до его родителя-обработчика событий.

PopupEvent

Свойство Тип Описание
popup Popup Открытый или закрытый всплывающее окно.
Свойство Тип Описание
type String Тип события (например, 'click').
target Object Объект, который сгенерировал событие. Для проходящих событий, последний объект в цепочке распространения, который сгенерировал событие.
sourceTarget Object Объект, который изначально сгенерировал событие. Для непроходящих событий, это будет то же самое, что и target.
propagatedFrom Object Для проходящих событий, последний объект, который распространил событие до его родителя-обработчика событий.
layer Object Устаревшее. То же самое, что и propagatedFrom.

TooltipEvent

Свойство Тип Описание
tooltip Tooltip Всплывающая подсказка, которая была открыта или закрыта.
Свойство Тип Описание
type String Тип события (например, 'click').
target Object Объект, который сгенерировал событие. Для проходящих событий, последний объект в цепочке распространения, который сгенерировал событие.
sourceTarget Object Объект, который изначально сгенерировал событие. Для непроходящих событий, это будет то же самое, что и target.
propagatedFrom Object Для проходящих событий, последний объект, который распространил событие до его родителя-обработчика событий.
layer Object Устаревшее. То же самое, что и propagatedFrom.

DragEndEvent

Свойство Тип Описание
distance Number Расстояние в пикселях, на которое было перемещено перетаскиваемое элемент.
Свойство Тип Описание
type String Тип события (например, 'click').
target Object Объект, который сгенерировал событие. Для проходящих событий, последний объект в цепочке распространения, который сгенерировал событие.
sourceTarget Object Объект, который изначально сгенерировал событие. Для непроходящих событий, это будет то же самое, что и target.
propagatedFrom Object Для проходящих событий, последний объект, который распространил событие до его родителя-обработчика событий.
layer Object Устаревшее. То же самое, что и propagatedFrom.

ZoomAnimEvent

Свойство Тип Описание
center LatLng Текущий центр карты
zoom Number Текущий уровень масштабирования карты
noUpdate Boolean Следует ли обновлять содержимое слоев в результате этого события
Свойство Тип Описание
type String Тип события (например, 'click').
target Object Объект, который сгенерировал событие. Для проходящих событий, последний объект в цепочке распространения, который сгенерировал событие.
sourceTarget Object Объект, который изначально сгенерировал событие. Для непроходящих событий, это будет то же самое, что и target.
propagatedFrom Object Для проходящих событий, последний объект, который распространил событие до его родителя-обработчика событий.
layer Object Устаревшее. То же самое, что и propagatedFrom.

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

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

<script>L_NO_TOUCH = true;</script>
<script src="leaflet.js"></script>
Переключатель Описание
L_NO_TOUCH Принудительно не использовать сенсорные события, даже если они обнаружены.
L_DISABLE_3D Принудительно не использовать ускоренные 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–2022 Vladimir Agafonkin
© 2010–2011, CloudMade
Maps © OpenStreetMap contributors.
https://leafletjs.com/SlavaUkraini/reference.html

Spec-Zone.ru

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