Spec-Zone.ru › Leaflet 1.0

Ссылка на API

Карта

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

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

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

Создание

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

Параметры

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Параметры взаимодействия с помощью сенсорного экрана

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

События

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Методы

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

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

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

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

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

removeControl(<Control> control) this

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

addLayer(<Layer> layer) this

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

removeLayer(<Layer> layer) this

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

hasLayer(<Layer> layer) Boolean

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

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

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

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

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

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

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

closePopup(<Popup> popup?) this

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

openTooltip(<Tooltip> tooltip) this

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

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

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

closeTooltip(<Tooltip> tooltip?) this

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

fitWorld(<fitBounds options> options?) this

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

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

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

panBy(<Point> offset) this

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

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

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

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

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

setMaxBounds(<Bounds> bounds) this

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

setMinZoom(<Number> zoom) this

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

setMaxZoom(<Number> zoom) this

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

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

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

invalidateSize(<Zoom/Pan options> options) this

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

invalidateSize(<Boolean> animate) this

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

stop() this

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

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

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

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

stopLocate() this

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

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

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

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

remove() this

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

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

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

getPane(<String|HTMLElement> pane) HTMLElement

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

getPanes() Object

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

getContainer() HTMLElement

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

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

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

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

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

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

getZoom() Number

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

getBounds() LatLngBounds

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

getMinZoom() Number

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

getMaxZoom() Number

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

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

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

getSize() Point

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

getPixelBounds() Bounds

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

getPixelOrigin() Point

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

getPixelWorldBounds(<Number> zoom?) Bounds

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

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

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

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

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

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

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

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

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

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

layerPointToLatLng(<Point> point) LatLng

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

latLngToLayerPoint(<LatLng> latlng) Point

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

wrapLatLng(<LatLng> latlng) LatLng

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

wrapLatLngBounds(<LatLngBounds> bounds) LatLngBounds

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

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

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

containerPointToLayerPoint(<Point> point) Point

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

layerPointToContainerPoint(<Point> point) Point

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

containerPointToLatLng(<Point> point) LatLng

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

latLngToContainerPoint(<LatLng> latlng) Point

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

mouseEventToContainerPoint(<MouseEvent> ev) Point

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

mouseEventToLayerPoint(<MouseEvent> ev) Point

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

mouseEventToLatLng(<MouseEvent> ev) LatLng

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

Свойства

Обработчики

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

Слои карты

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

Опции определения местоположения

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

Опции масштабирования

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

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

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

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

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

Опции FitBounds

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

Маркер

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

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

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

Создание

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

Опции

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

События

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

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

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

Методы

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

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

getLatLng() LatLng

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

setLatLng(<LatLng> latlng) this

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

setZIndexOffset(<Number> offset) this

Изменяет смещение z-индекса метки.

setIcon(<Icon> icon) this

Изменяет иконку метки.

setOpacity(<Number> opacity) this

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

Свойства

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

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

Всплывающее окно

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

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

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

marker.bindPopup(popupContent).openPopup();

Для наложений, таких как полилинии, также есть метод bindPopup. Вот более сложный способ открытия всплывающего окна на карте:

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

Создание

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

Параметры

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

События

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

Методы

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

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

setLatLng(<LatLng> latlng) this

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

getContent() String|HTMLElement

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

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

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

getElement() String|HTMLElement

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

update() null

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

isOpen() Boolean

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

bringToFront() this

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

bringToBack() this

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

openOn(<Map> map) this

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

Подсказка

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

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

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

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

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

Создание

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

Параметры

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

События

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

Методы

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

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

Слой_плиток

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

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

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

Шаблон URL

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

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

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

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

Создание

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

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

Параметры

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

События

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

Методы

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

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

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

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

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

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

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

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

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

bringToBack() this

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

getContainer() HTMLElement

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

setOpacity(<Number> opacity) this

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

setZIndex(<Number> zIndex) this

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

isLoading() Boolean

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

redraw() this

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

getTileSize() Point

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

TileLayer.WMS

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

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

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

Создание

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

Параметры

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

События

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

Методы

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

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

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

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

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

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

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

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

bringToBack() this

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

getContainer() HTMLElement

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

setOpacity(<Number> opacity) this

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

setZIndex(<Number> zIndex) this

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

isLoading() Boolean

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

redraw() this

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

getTileSize() Point

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

ImageOverlay

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

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

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

Создание

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

Параметры

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

События

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

Методы

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

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

bringToFront() this

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

bringToBack() this

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

setUrl(<String> url) this

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

setBounds(<LatLngBounds> bounds) this

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

getBounds() LatLngBounds

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

getElement() HTMLElement

Получить элемент img, представляющий ImageOverlay на карте

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

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

Путь

Абстрактный класс, содержащий параметры и константы, общие для векторных наложений (Многоугольник, Полилиния, Окружность). Не используйте его напрямую. Расширяет 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' Строка, определяющая как определяется внутренняя часть фигуры.
renderer Renderer Используйте этот экземпляр Renderer для этого пути. Имеет приоритет над по умолчанию рендерером карты.
className String null Пользовательское имя класса, заданное для элемента. Только для рендеринга SVG.
Параметр Тип Значение по умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет действовать как часть базовой карты.
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой добавляется в слой наложения карты. Переопределение этого параметра приведет к размещению слоя по умолчанию на другом слое.
attribution String null Строка, отображаемая в элементе управления атрибутами, описывающая данные слоя, например, "© Mapbox".

События

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

Методы

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

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

Полилиния

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

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

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

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

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

Создание

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

Опции

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

События

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

Методы

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

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

getLatLngs() LatLng[]

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

setLatLngs(<LatLng[]> latlngs) this

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

isEmpty() Boolean

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

getCenter() LatLng

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

getBounds() LatLngBounds

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

addLatLng(<LatLng> latlng) this

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

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

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

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

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

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

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

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

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

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

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' Строка, определяющая правила определения внутренней части фигуры.
renderer Renderer Использовать данный экземпляр Renderer для этого пути. Имеет приоритет над по умолчанию рендерером карты.
className String null Пользовательское имя класса, установленное на элементе. Только для SVG рендера.
Параметр Тип Значение по умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет частью основной карты.
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен к слою наложения карты. Переопределение этого параметра добавит слой на другой слой по умолчанию.
attribution String null Строка, отображаемая в элементе управления атрибуцией, описывает данные слоя, например, "© Mapbox".

События

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

Методы (polygon)

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

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

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

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

setLatLngs(<LatLng[]> latlngs) this

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

isEmpty() Boolean

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

getCenter() LatLng

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

getBounds() LatLngBounds

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

addLatLng(<LatLng> latlng) this

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

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

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

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

Класс для отрисовки прямоугольных наложений на карте. Расширяет 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' Строка, определяющая как определяется внутренняя часть фигуры.
renderer Renderer Использовать этот экземпляр Renderer для этого пути. Имеет приоритет над стандартным рендерером карты.
className String null Пользовательское имя класса, устанавливаемое на элементе. Только для рендеринга SVG.
Параметр Тип Значение по умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет действовать как часть базовой карты.
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой добавляется в слой наложений карты. Переопределение этого параметра приведет к размещению слоя на другом слое по умолчанию.
attribution String null Строка, отображаемая в панели атрибутов, описывающая данные слоя, например, "© Mapbox".

События

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

Методы

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

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

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

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

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

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

setLatLngs(<LatLng[]> latlngs) this

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

isEmpty() Boolean

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

getCenter() LatLng

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

getBounds() LatLngBounds

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

addLatLng(<LatLng> latlng) this

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

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

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

Круг

Класс для рисования круговых наложений на карту. Расширяет 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' Строка, определяющая как определяется внутренняя часть фигуры.
renderer Renderer Использовать этот конкретный экземпляр Renderer для этого пути. Имеет приоритет над стандартным рендерером карты.
className String null Настраиваемое имя класса, заданное на элементе. Только для SVG рендерера.
Опция Тип Значение по умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет действовать как часть базовой карты.
Опция Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой добавляется на слой наложения карты. Изменение этой опции приведет к размещению слоя на другом слое по умолчанию.
attribution String null Строка, отображаемая в панели атрибутов, описывающая данные слоя, например, "© Mapbox".

События

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

Методы

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

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

getRadius() Number

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

getBounds() LatLngBounds

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

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

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

setLatLng(<LatLng> latLng) this

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

getLatLng() LatLng

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

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

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

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

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

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

remove() this

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

removeFrom(<Map> map) this

Удаляет слой с указанной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий указанный слой на карте. Если name опущено, возвращает слой для этого слоя.

getAttribution() String

Используется attribution control, возвращает параметр атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающую подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающую подсказку, ранее привязанную с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку по указанным latlng или по умолчанию, если не передан latlng.

closePopup() this

Закрывает всплывающую подсказку, привязанную к этому слою, если она открыта.

togglePopup() this

Открывает или закрывает всплывающую подсказку, привязанную к этому слою, в зависимости от текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, в настоящее время открыта.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getPopup() Popup

Возвращает всплывающую подсказку, привязанную к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку по указанным latlng или по умолчанию, если не передан latlng.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) на определённый тип события объекта. Вы можете указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Также можно указать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, удалятся все обработчики указанного события для объекта. Обратите внимание, что если вы передали пользовательский контекст для on, вы должны передать тот же контекст для off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий для объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно предоставить объект данных — свойства объекта будут первым аргументом функции-обработчика. Событие может быть необязательно распространено на родительские элементы.

listens(<String> type) Boolean

Возвращает true, если для определенного типа события есть какие-либо обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родителя события — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родителя события, чтобы он перестал получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

CircleMarker

Круг фиксированного размера с радиусом, заданным в пикселях. Расширяет Path.

Создание

Фабрика Описание
L.circleMarker(<LatLng> latlng, <CircleMarker options> options?) Создаёт объект маркера круга, заданного географической точкой и необязательным объектом опций.

Опции

Опция Тип По умолчанию Описание
radius Number 10 Радиус маркера круга в пикселях
Опция Тип По умолчанию Описание
stroke Boolean true Определяет, будет ли нарисован контур по пути. Установите в false, чтобы отключить границы у полигонов или окружностей.
color String '#3388ff' Цвет контура
weight Number 3 Ширина контура в пикселях
opacity Number 1.0 Непрозрачность контура
lineCap String 'round' Строка, определяющая форму, используемую в конце контура.
lineJoin String 'round' Строка, определяющая форму, используемую в углах контура.
dashArray String null Строка, определяющая паттерн штриховки контура. Не работает на Canvas-слоях в некоторых старых браузерах.
dashOffset String null Строка, определяющая расстояние до начала паттерна штриховки. Не работает на Canvas-слоях в некоторых старых браузерах.
fill Boolean depends Определяет, будет ли заполнен путь цветом. Установите в false, чтобы отключить заполнение полигонов или окружностей.
fillColor String * Цвет заливки. По умолчанию соответствует значению опции color
fillOpacity Number 0.2 Непрозрачность заливки.
fillRule String 'evenodd' Строка, определяющая как определяется внутренняя часть фигуры.
renderer Renderer Используйте этот экземпляр Renderer для этого пути. Имеет приоритет над стандартным рендерером карты.
className String null Пользовательское имя класса, заданное на элементе. Только для SVG рендера.
Опция Тип По умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет действовать как часть базовой карты.
Опция Тип По умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на слой наложения карты. Переопределение этой опции приведет к размещению слоя на другом слое по умолчанию.
attribution String null Строка, отображаемая в панели атрибуции, описывает данные слоя, например, "© Mapbox".

События

Событие Данные Описание
click MouseEvent Fired when the user clicks (or taps) the layer.
dblclick MouseEvent Fired when the user double-clicks (or double-taps) the layer.
mousedown MouseEvent Fired when the user pushes the mouse button on the layer.
mouseover MouseEvent Fired when the mouse enters the layer.
mouseout MouseEvent Fired when the mouse leaves the layer.
contextmenu MouseEvent Fired when the user right-clicks on the layer, prevents default browser context menu from showing if there are listeners on this event. Also fired on mobile when the user holds a single touch for a second (also called long press).
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
toGeoJSON() Object

Возвращает представление круговой метки в формате GeoJSON (как геообъект GeoJSON Point).

setLatLng(<LatLng> latLng) this

Устанавливает положение круговой метки в новом месте.

getLatLng() LatLng

Возвращает текущее географическое положение круговой метки.

setRadius(<Number> radius) this

Устанавливает радиус круговой метки. Единицы измерения — пиксели.

getRadius() Number

Возвращает текущий радиус круга.

Метод Возвращает Описание
redraw() this

Перерисовывает слой. Иногда полезно после изменения координат, используемых траекторией.

setStyle(<Path options> style) this

Изменяет внешний вид объекта Path на основе параметров в объекте Path options.

bringToFront() this

Выводит слой поверх всех слоев траектории.

bringToBack() this

Выводит слой под все слои траектории.

Метод Возвращает Описание
addTo(<Map> map) this

Добавляет слой на указанную карту.

remove() this

Удаляет слой с карты, на которой он сейчас активен.

removeFrom(<Map> map) this

Удаляет слой с указанной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий указанную область на карте. Если name опущена, возвращает область для данного слоя.

getAttribution() String

Используется attribution control, возвращает параметр атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающую подсказку (popup) к слою с переданными content и настраивает необходимые обработчики событий. Если передана Function, она получит слой в качестве первого аргумента и должна вернуть String или HTMLElement.

unbindPopup() this

Удаляет ранее привязанную всплывающую подсказку (popup) с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку (popup) в указанной latlng или в стандартной точке якоря всплывающей подсказки, если latlng не передана.

closePopup() this

Закрывает всплывающую подсказку (popup), привязанную к этому слою, если она открыта.

togglePopup() this

Открывает или закрывает всплывающую подсказку (popup), привязанную к этому слою, в зависимости от ее текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающая подсказка (popup), привязанная к этому слою, в данный момент открыта.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающей подсказки (popup), привязанной к этому слою.

getPopup() Popup

Возвращает всплывающую подсказку (popup), привязанную к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку (tooltip) к слою с переданными content и настраивает необходимые обработчики событий. Если передана Function, она получит слой в качестве первого аргумента и должна вернуть String или HTMLElement.

unbindTooltip() this

Удаляет ранее привязанную подсказку (tooltip) с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку (tooltip) в указанной latlng или в стандартной точке якоря подсказки, если latlng не передана.

closeTooltip() this

Закрывает подсказку (tooltip), привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку (tooltip), привязанную к этому слою, в зависимости от ее текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка (tooltip), привязанная к этому слою, в данный момент открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки (tooltip), привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку (tooltip), привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определенному типу события объекта. Вы можете указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Также можно передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар "тип/обработчик", например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, удаляются все обработчики данного события. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар "тип/обработчик".

off() this

Удаляет все обработчики всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно предоставить объект данных — первый аргумент функции-обработчика будет содержать его свойства. Событие необязательно может быть передано родительским элементам.

listens(<String> type) Boolean

Возвращает true, если для определенного типа события есть какие-либо прикрепленные обработчики.

once(…) this

Ведет себя как on(…), за исключением того, что обработчик будет вызван один раз и затем удален.

addEventParent(<Evented> obj) this

Добавляет родительский элемент события — Evented, который получит передаваемые события.

removeEventParent(<Evented> obj) this

Удаляет родительский элемент события, так что он перестанет получать передаваемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

SVG

Хотя SVG недоступен в IE7 и IE8, эти браузеры поддерживают VML, и в этом случае рендерер SVG будет использовать VML по умолчанию. VML был устаревшим в 2012 году, что означает, что функциональность VML существует только для обратной совместимости со старыми версиями Internet Explorer.

Позволяет отображать векторные слои с помощью SVG. Наследует Renderer. Из-за технических ограничений, SVG не доступен во всех веб-браузерах, особенно в Android 2.x и 3.x. Хотя SVG недоступен в IE7 и IE8, эти браузеры поддерживают VML (теперь устаревшая технология), и в этом случае рендерер SVG будет использовать VML по умолчанию.

Пример использования

Используйте SVG по умолчанию для всех путей на карте:

var map = L.map('map', {
    renderer: L.svg()
});

Используйте рендерер SVG с дополнительным отступом для конкретных векторных геометрий:

var map = L.map('map');
var myRenderer = L.svg({ padding: 0.5 });
var line = L.polyline( coordinates, { renderer: myRenderer } );
var circle = L.circle( center, { renderer: myRenderer } );

Создание

Фабрика Описание
L.svg(<Renderer options> options?) Создает рендерер SVG с заданными параметрами.

Параметры

Параметр Тип Значение по умолчанию Описание
padding Number 0.1 Насколько необходимо расширить область обрезки вокруг представления карты (относительно её размера), например, 0,1 будет соответствовать 10% представления карты в каждом направлении
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен в панель наложений карты. Переопределение этого параметра приведет к размещению слоя в другой панели по умолчанию.
attribution String null Строка, отображаемая в элементе управления атрибутами, описывающая данные слоя, например, «© Mapbox».

События

Событие Данные Описание
update Event Fired when the renderer updates its bounds, center and zoom, for example when its map has moved
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращаемое значение Описание
addTo(<Map> map) this

Добавляет слой к заданной карте

remove() this

Удаляет слой с карты, на которой он сейчас активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий собой названную панель на карте. Если name опущено, возвращает панель для этого слоя.

getAttribution() String

Используется элементом управления атрибутами, возвращает параметр атрибуции.

Метод Возвращаемое значение Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающее окно к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее привязанное с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанное всплывающее окно в указанной latlng или в стандартном якоре всплывающего окна, если переданный latlng отсутствует.

closePopup() this

Закрывает привязанное всплывающее окно к этому слою, если оно открыто.

togglePopup() this

Открывает или закрывает всплывающее окно, привязанное к этому слою, в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающее окно, привязанное к этому слою, в настоящее время открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, привязанного к этому слою.

getPopup() Popup

Возвращает всплывающее окно, привязанное к этому слою.

Метод Возвращаемое значение Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или в стандартном якоре подсказки, если переданный latlng отсутствует.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-слушатель (fn) к определённому типу события объекта. Вы можете необязательно указать контекст слушателя (объект, к которому будет указывать ключевое слово this). Также вы можете передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар "тип/слушатель", например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-слушатель. Если функция не указана, будут удалены все слушатели этого события из объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off, чтобы удалить слушателя.

off(<Object> eventMap) this

Удаляет набор пар "тип/слушатель".

off() this

Удаляет всех слушателей всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно передать объект данных — первый аргумент функции-слушателя будет содержать его свойства. Событие может быть необязательно распространено на родительские элементы.

listens(<String> type) Boolean

Возвращает true, если у определённого типа события есть какие-либо прикреплённые слушатели.

once(…) this

Ведёт себя как on(…), за исключением того, что слушатель будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительский элемент события — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительский элемент события, чтобы он перестал получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Функции

Существует несколько статических функций, которые можно вызывать без создания экземпляра L.SVG:
Функция Возвращает Описание
create(<String> name) SVGElement Возвращает экземпляр SVGElement, соответствующий переданному имени класса. Например, использование 'line' вернёт экземпляр SVGLineElement.
pointsToPath(<Point[]> rings, <Boolean> closed) String Генерирует строку SVG-пути для нескольких колец, при этом каждое кольцо преобразуется в инструкции "M..L..L..".

Полотно

Позволяет отображать векторные слои с помощью <canvas>. Наследует Renderer. Из-за технических ограничений, Полотно недоступно во всех веб-браузерах, в частности в IE8, и в некоторых особых случаях перекрывающиеся геометрии могут отображаться некорректно.

Пример использования

Используйте Полотно по умолчанию для всех путей на карте:

var map = L.map('map', {
    renderer: L.canvas()
});

Используйте рендерер Полотно с дополнительным отступом для определённых векторных геометрий:

var map = L.map('map');
var myRenderer = L.canvas({ padding: 0.5 });
var line = L.polyline( coordinates, { renderer: myRenderer } );
var circle = L.circle( center, { renderer: myRenderer } );

Создание

Фабрика Описание
L.canvas(<Renderer options> options?) Создаёт рендерер Полотно с заданными параметрами.

Параметры

Параметр Тип Значение по умолчанию Описание
padding Number 0.1 Насколько расширить область обрезки вокруг представления карты (относительно его размера), например, 0,1 будет составлять 10% размера представления карты в каждом направлении
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен к слою-накладке карты. Переопределение этого параметра вызовет размещение слоя на другом слое по умолчанию.
attribution String null Строка, отображаемая в элементе управления подписью, описывающая данные слоя, например, "© Mapbox".

События

Событие Данные Описание
update Event Fired when the renderer updates its bounds, center and zoom, for example when its map has moved
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
addTo(<Map> map) this

Добавляет слой к заданной карте

remove() this

Удаляет слой с карты, на которой он в данный момент активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий указанный слой на карте. Если name опущено, возвращает слой для этого слоя.

getAttribution() String

Используется элементом управления подписью, возвращает параметр подписи.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Связывает всплывающую подсказку со слоем с переданным content и настраивает необходимые слушатели событий. Если передаётся Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающую подсказку, ранее связанную с bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку в указанной latlng или по умолчанию в якорной точке всплывающей подсказки, если не указано latlng.

closePopup() this

Закрывает привязанную всплывающую подсказку к данному слою, если она открыта.

togglePopup() this

Открывает или закрывает всплывающую подсказку, привязанную к этому слою, в зависимости от её текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, в настоящее время открыта.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getPopup() Popup

Возвращает всплывающую подсказку, привязанную к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает всплывающую подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет ранее привязанную всплывающую подсказку с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку в указанной latlng или в стандартной точке привязки всплывающей подсказки, если нет latlng.

closeTooltip() this

Закрывает всплывающую подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает всплывающую подсказку, привязанную к этому слою, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает всплывающую подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определенному типу события объекта. Вы можете указать контекст обработчика (объект, к которому будет относиться this). Вы также можете передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, все обработчики этого конкретного события будут удалены из объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off для удаления обработчика.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете дополнительно предоставить объект данных — свойства этого объекта будут первым аргументом функции-обработчика. Событие может быть дополнительно распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определенного типа события есть какие-либо прикрепленные обработчики.

once(…) this

Ведет себя как on(…), за исключением того, что обработчик будет вызван только один раз и затем удален.

addEventParent(<Evented> obj) this

Добавляет родительское событие — Evented, которое будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родительское событие, чтобы оно перестало получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Группа слоёв

Используется для группирования нескольких слоёв и обработки их как одного. Если добавить его на карту, любые слои, добавленные или удалённые из группы, также будут добавлены/удалены на карте. Расширяет Layer.

Пример использования

L.layerGroup([marker1, marker2])
    .addLayer(polyline)
    .addTo(map);

Создание

Фабрика Описание
L.layerGroup(<Layer[]> layers) Создаёт группу слоёв, необязательно с начальным набором слоёв.

Параметры

Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на панель перекрытий карты. Переопределение этого параметра разместит слой по умолчанию на другой панели.
attribution String null Строка, отображаемая в панели атрибуции, описывает данные слоя, например, "© Mapbox".

События

Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
toGeoJSON() Object

Возвращает представление группы слоёв в формате GeoJSON (как GeoJSON GeometryCollection).

addLayer(<Layer> layer) this

Добавляет указанный слой в группу.

removeLayer(<Layer> layer) this

Удаляет указанный слой из группы.

removeLayer(<Number> id) this

Удаляет слой с заданным внутренним идентификатором из группы.

hasLayer(<Layer> layer) Boolean

Возвращает true, если данный слой в настоящее время добавлен в группу.

clearLayers() this

Удаляет все слои из группы.

invoke(<String> methodName, …) this

Вызывает methodName на каждом слое, содержащемся в этой группе, передавая любые дополнительные параметры. Не имеет эффекта, если содержащиеся слои не реализуют methodName.

eachLayer(<Function> fn, <Object> context?) this

Итерируется по слоям группы, необязательно указывая контекст функции-итератора.

group.eachLayer(function (layer) {
    layer.bindPopup('Hello');
});
getLayer(<Number> id) Layer

Возвращает слой с заданным внутренним идентификатором.

getLayers() Layer[]

Возвращает массив всех слоёв, добавленных в группу.

setZIndex(<Number> zIndex) this

Вызывает setZIndex на каждом слое, содержащемся в этой группе, передавая индекс z.

getLayerId(<Layer> layer) Number

Возвращает внутренний идентификатор слоя

Метод Возвращает Описание
addTo(<Map> map) this

Добавляет слой на заданную карту

remove() this

Удаляет слой с карты, на которой он в настоящее время активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющее именованный слой на карте. Если name опущено, возвращает слой для этого слоя.

getAttribution() String

Используется attribution control, возвращает параметр атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающее окно к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее привязанное с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанное всплывающее окно в указанном latlng или в стандартном якоре всплывающего окна, если latlng не указан.

closePopup() this

Закрывает привязанное к этому слою всплывающее окно, если оно открыто.

togglePopup() this

Открывает или закрывает привязанное к этому слою всплывающее окно в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающее окно, привязанное к этому слою, в данный момент открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, привязанного к этому слою.

getPopup() Popup

Возвращает всплывающее окно, привязанное к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или в стандартном якоре подсказки, если latlng не указан.

closeTooltip() this

Закрывает привязанную к этому слою подсказку, если она открыта.

toggleTooltip() this

Открывает или закрывает привязанную к этому слою подсказку в зависимости от ее текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в данный момент открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определенному типу события объекта. Можно указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Также можно передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, удаляются все обработчики данного события объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off для удаления обработчика.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Можно дополнительно указать объект данных — свойства этого объекта будут первым аргументом функции-обработчика. Событие может быть дополнительно распространено на родительские элементы.

listens(<String> type) Boolean

Возвращает true, если для определенного типа события есть присоединенные обработчики.

once(…) this

Ведет себя как on(…), за исключением того, что обработчик будет вызван только один раз, а затем удален.

addEventParent(<Evented> obj) this

Добавляет родительский элемент события — Evented, который получит распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительский элемент события, чтобы он перестал получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

FeatureGroup

Расширенный LayerGroup, который упрощает выполнение одних и тех же действий со всеми слоями-членами:

  • bindPopup привязывает всплывающее окно ко всем слоям сразу (аналогично с bindTooltip)
  • События распространяются на FeatureGroup, поэтому, если у группы есть обработчик событий, он будет обрабатывать события любого из слоев. Это включает в себя события мыши и пользовательские события.
  • Имеет события layeradd и layerremove

Пример использования

L.featureGroup([marker1, marker2, polyline])
    .bindPopup('Hello world!')
    .on('click', function() { alert('Clicked on a member of the group!'); })
    .addTo(map);

Создание

Фабрика Описание
L.featureGroup(<Layer[]> layers) Создает группу слоев, необязательно задавая начальный набор слоев.

Параметры

Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на слой overlay pane карты. Переопределение этого параметра приведет к размещению слоя на другом слое по умолчанию.
attribution String null Строка, отображаемая в элементе атрибуции, описывает данные слоя, например "© Mapbox".

События

Событие Данные Описание
layeradd LayerEvent Fired when a layer is added to this FeatureGroup
layerremove LayerEvent Fired when a layer is removed from this FeatureGroup
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
setStyle(<Path options> style) this

Устанавливает заданные параметры пути для каждого слоя группы, у которого есть метод setStyle.

bringToFront() this

Перемещает группу слоёв наверх всех остальных слоёв

bringToBack() this

Перемещает группу слоёв назад, за все остальные слои

getBounds() LatLngBounds

Возвращает LatLngBounds группы объектов (созданной из границ и координат её дочерних элементов).

Метод Возвращает Описание
toGeoJSON() Object

Возвращает представление группы слоёв в формате GeoJSON (как GeoJSON GeometryCollection).

addLayer(<Layer> layer) this

Добавляет заданный слой в группу.

removeLayer(<Layer> layer) this

Удаляет заданный слой из группы.

removeLayer(<Number> id) this

Удаляет слой с заданным внутренним идентификатором из группы.

hasLayer(<Layer> layer) Boolean

Возвращает true, если заданный слой в настоящее время добавлен в группу.

clearLayers() this

Удаляет все слои из группы.

invoke(<String> methodName, …) this

Вызывает methodName на каждом слое, содержащемся в этой группе, передавая любые дополнительные параметры. Не имеет эффекта, если содержащиеся слои не реализуют methodName.

eachLayer(<Function> fn, <Object> context?) this

Итерируется по слоям группы, необязательно указывая контекст функции итератора.

group.eachLayer(function (layer) {
    layer.bindPopup('Hello');
});
getLayer(<Number> id) Layer

Возвращает слой с заданным внутренним идентификатором.

getLayers() Layer[]

Возвращает массив всех слоёв, добавленных в группу.

setZIndex(<Number> zIndex) this

Вызывает setZIndex на каждом слое, содержащемся в этой группе, передавая z-индекс.

getLayerId(<Layer> layer) Number

Возвращает внутренний идентификатор слоя.

Метод Возвращает Описание
addTo(<Map> map) this

Добавляет слой к данной карте.

remove() this

Удаляет слой с карты, на которой он сейчас активен.

removeFrom(<Map> map) this

Удаляет слой с данной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий именованный pane на карте. Если name опущено, возвращает pane для этого слоя.

getAttribution() String

Используется attribution control, возвращает опцию атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающее окно к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее привязанное с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанное всплывающее окно в указанной latlng или по умолчанию, если не передан latlng.

closePopup() this

Закрывает всплывающее окно, привязанное к этому слою, если оно открыто.

togglePopup() this

Открывает или закрывает всплывающее окно, привязанное к этому слою, в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающее окно, привязанное к этому слою, открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, привязанного к этому слою.

getPopup() Popup

Возвращает всплывающее окно, привязанное к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или по умолчанию, если не передан latlng.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет обработчик событий (fn) для определённого типа события объекта. Вы можете указать контекст обработчика (объект, к которому будет относиться this). Также вы можете передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленный обработчик событий. Если функция не указана, будут удалены все обработчики данного события для объекта. Обратите внимание, если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий для объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете дополнительно предоставить объект данных — первый аргумент функции обработчика будет содержать его свойства. Событие может быть дополнительно распространено на родительские объекты.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события есть присоединённые обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз и затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительский объект события — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительский объект события, так что он перестанет получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

GeoJSON

Представляет объект GeoJSON или массив объектов GeoJSON. Позволяет парсить данные GeoJSON и отображать их на карте. Расширяет FeatureGroup.

Пример использования

L.geoJSON(data, {
    style: function (feature) {
        return {color: feature.properties.color};
    }
}).bindPopup(function (layer) {
    return layer.feature.properties.description;
}).addTo(map);

Создание

Фабрика Описание
L.geoJSON(<Object> geojson?, <GeoJSON options> options?) Создаёт слой GeoJSON. Дополнительно принимает объект в формате GeoJSON для отображения на карте (вы можете добавить его позже с помощью метода addData) и объект options.

Параметры

Параметр Тип По умолчанию Описание
pointToLayer Function * Функция, определяющая, как точки GeoJSON преобразуются в слои Leaflet. Она вызывается при добавлении данных, передавая объект GeoJSON и его LatLng. По умолчанию создаёт стандартный маркер:
function(geoJsonPoint, latlng) {
    return L.marker(latlng);
}
style Function * Функция, определяющая стиль линий и полигонов GeoJSON, вызываемая при добавлении данных. По умолчанию не переопределяет стандартные настройки:
function (geoJsonFeature) {
    return {}
}
onEachFeature Function * Функция, вызываемая для каждого созданного элемента GeoJSON после его создания и стилизации. Полезно для прикрепления событий и всплывающих подсказок к элементам. По умолчанию ничего не делает со слоями:
function (feature, layer) {}
filter Function * Функция, используемая для определения, следует ли включать элемент или нет. По умолчанию включаются все элементы:
function (geoJsonFeature) {
    return true;
}

Примечание: динамическое изменение параметра filter повлияет только на вновь добавленные данные. Он не переоценит уже включённые элементы.

coordsToLatLng Function * Функция, преобразующая координаты GeoJSON в LatLng. По умолчанию используется статический метод coordsToLatLng.
Параметр Тип По умолчанию Описание
pane String 'overlayPane' По умолчанию слой добавляется на панель перекрытий карты (overlay pane). Переопределение этого параметра по умолчанию разместит слой на другой панели.
attribution String null Строка, отображаемая в панели атрибутов, описывающая данные слоя, например, "© Mapbox".

События

Событие Данные Описание
layeradd LayerEvent Fired when a layer is added to this FeatureGroup
layerremove LayerEvent Fired when a layer is removed from this FeatureGroup
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
addData(data) this

Добавляет объект GeoJSON в слой.

resetStyle(layer) this

Сбрасывает стиль слоя векторных данных до исходного стиля GeoJSON, полезно для сброса стиля после событий наведения.

setStyle(style) this

Изменяет стили слоёв векторных данных GeoJSON с помощью заданной функции стилизации.

Метод Возвращает Описание
bringToFront() this

Перемещает группу слоёв вперёд всех остальных.

bringToBack() this

Перемещает группу слоёв назад всех остальных.

getBounds() LatLngBounds

Возвращает LatLngBounds группы элементов (созданный из границ и координат её дочерних элементов).

Метод Возвращает Описание
toGeoJSON() Object

Возвращает представление группы слоёв в формате GeoJSON (как GeoJSON GeometryCollection).

addLayer(<Layer> layer) this

Добавляет указанный слой в группу.

removeLayer(<Layer> layer) this

Удаляет указанный слой из группы.

removeLayer(<Number> id) this

Удаляет слой с заданным внутренним ID из группы.

hasLayer(<Layer> layer) 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

Возвращает слой с заданным внутренним ID.

getLayers() Layer[]

Возвращает массив всех слоёв, добавленных в группу.

setZIndex(<Number> zIndex) this

Вызывает setZIndex на каждом слое в этой группе, передавая z-индекс.

getLayerId(<Layer> layer) Number

Возвращает внутренний ID слоя.

Метод Возвращает Описание
addTo(<Map> map) this

Добавляет слой на заданную карту.

remove() this

Удаляет слой с карты, на которой он в настоящее время активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий собой указанную область на карте. Если name опущено, возвращает область для данного слоя.

getAttribution() String

Используется attribution control, возвращает параметр атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Связывает всплывающую подсказку со слоем с переданным content и устанавливает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающую подсказку, ранее связанную с bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку в указанной latlng или в стандартной точке привязки подсказки, если latlng не указана.

closePopup() this

Закрывает всплывающую подсказку, привязанную к этому слою, если она открыта.

togglePopup() this

Открывает или закрывает всплывающую подсказку, привязанную к этому слою, в зависимости от ее текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, в настоящее время открыта.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getPopup() Popup

Возвращает всплывающую подсказку, привязанную к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и устанавливает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее связанную с bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или в стандартной точке привязки подсказки, если latlng не указана.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от ее текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определенному типу события объекта. Вы можете необязательно указать контекст обработчика (объект, на который будет указывать ключевое слово this). Вы также можете передать несколько типов, разделённых пробелом (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}.

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, она удалит всех обработчиков этого события в объекте. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет всех обработчиков всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно передать объект данных — свойства этого объекта будут первым аргументом функции-обработчика. Событие необязательно может быть распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определенного типа события есть какие-либо обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительское событие — Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родительское событие, чтобы оно перестало получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Функции

Существует несколько статических функций, которые можно вызвать без создания экземпляра 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) Array Обратная функция coordsToLatLng
latLngsToCoords(<Array> latlngs, <Number> levelsDeep?, <Boolean> closed?) Array Обратная функция coordsToLatLngs closed определяет, нужно ли добавлять первую точку в конец массива для закрытия фигуры; используется только когда levelsDeep равно 0. По умолчанию False.
asFeature(<Object> geojson) Object Нормализует геометрии/признаки GeoJSON в признаки GeoJSON.

GridLayer

Общий класс для обработки разметки плиток из HTML-элементов. Это базовый класс для всех слоёв плиток и заменяет TileLayer.Canvas. GridLayer можно расширить, чтобы создать разметку плиток из HTML-элементов, таких как <canvas>, <img> или <div>. GridLayer будет обрабатывать создание и анимацию этих DOM-элементов за вас.

Пример использования

Синхронное использование

Для создания пользовательского слоя расширьте GridLayer и реализуйте метод createTile(), которому будет передан объект Point с координатами x, y и z (уровень масштабирования) для отрисовки вашей плитки.

var CanvasLayer = L.GridLayer.extend({
    createTile: function(coords){
        // create a <canvas> element for drawing
        var tile = L.DomUtil.create('canvas', 'leaflet-tile');
        // setup tile width and height according to the options
        var size = this.getTileSize();
        tile.width = size.x;
        tile.height = size.y;
        // get a canvas context and draw something on it using coords.x, coords.y and coords.z
        var ctx = tile.getContext('2d');
        // return the tile so it can be rendered on screen
        return tile;
    }
});

Асинхронное использование

Создание плиток также может быть асинхронным, что полезно при использовании сторонней библиотеки отрисовки. После завершения отрисовки плитки она может быть передана в обратный вызов done().

var CanvasLayer = L.GridLayer.extend({
    createTile: function(coords, done){
        var error;
        // create a <canvas> element for drawing
        var tile = L.DomUtil.create('canvas', 'leaflet-tile');
        // setup tile width and height according to the options
        var size = this.getTileSize();
        tile.width = size.x;
        tile.height = size.y;
        // draw something asynchronously and pass the tile to the done() callback
        setTimeout(function() {
            done(error, tile);
        }, 1000);
        return tile;
    }
});

Создание

Фабрика Описание
L.gridLayer(<GridLayer options> options?) Создаёт новый экземпляр GridLayer с предоставленными опциями.

Опции

Опция Тип По умолчанию Описание
tileSize Number|Point 256 Ширина и высота плиток в сетке. Используйте число, если ширина и высота равны, или L.point(width, height) в противном случае.
opacity Number 1.0 Непрозрачность плиток. Может быть использована в функции createTile().
updateWhenIdle Boolean depends Если false, новые плитки загружаются во время перемещения, в противном случае только после него (для лучшей производительности). По умолчанию true в мобильных браузерах, в противном случае false.
updateWhenZooming Boolean true По умолчанию плавная анимация масштабирования (во время масштабирования касанием или flyTo()) будет обновлять слои сетки на каждом целочисленном уровне масштабирования. Установка этого параметра в значение false обновит слой сетки только по завершении плавной анимации.
updateInterval Number 200 Плитки не будут обновляться чаще, чем раз в updateInterval миллисекунд при перемещении.
zIndex Number 1 Явное значение zIndex слоя плиток.
bounds LatLngBounds undefined Если задано, плитки будут загружаться только внутри заданных LatLngBounds.
minZoom Number 0 Минимальный уровень масштабирования, на котором будут загружаться плитки. По умолчанию — вся карта.
maxZoom Number undefined Максимальный уровень масштабирования, на котором будут загружаться плитки.
noWrap Boolean false Если слой перекрывается через антимеридиан. Если true, GridLayer будет отображаться только один раз при низких уровнях масштабирования. Не оказывает влияния, если CRS карты не перекрывается. Может быть использован в сочетании с bounds, чтобы предотвратить запрос плиток за пределами ограничений CRS.
pane String 'tilePane' Map pane, куда будет добавлен слой плиток.
className String '' Пользовательское имя класса, которое нужно назначить слою плиток. По умолчанию пустое.
keepBuffer Number 2 При перемещении карты сохраняется столько строк и столбцов плиток, прежде чем они будут разгружены.
Опция Тип По умолчанию Описание
attribution String null Строка, которая будет отображаться в блоке атрибутов, описывает данные слоя, например "© Mapbox".

События

Событие Данные Описание
loading Event Fired when the grid layer starts loading tiles.
tileunload TileEvent Fired when a tile is removed (e.g. when a tile goes off the screen).
tileloadstart TileEvent Fired when a tile is requested and starts loading.
tileerror TileErrorEvent Fired when there is an error loading a tile.
tileload TileEvent Fired when a tile loads.
load Event Fired when the grid layer loaded all visible tiles.
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
bringToFront() this

Выводит слой плиток поверх всех других слоёв плиток.

bringToBack() this

Выводит слой плиток под все другие слои плиток.

getContainer() HTMLElement

Возвращает HTML-элемент, содержащий плитки для данного слоя.

setOpacity(<Number> opacity) this

Изменяет непрозрачность слоя плиток.

setZIndex(<Number> zIndex) this

Изменяет zIndex слоя плиток.

isLoading() Boolean

Возвращает true, если какая-либо плитка в слое сетки не завершила загрузку.

redraw() this

Заставляет слой очистить все плитки и запросить их снова.

getTileSize() Point

Нормализует опцию tileSize в точку. Используется методом createTile().

Методы расширения

Слои, расширяющие GridLayer, должны переопределять следующие методы.
Метод Возвращает Описание
createTile(<Object> coords, <Function> done?) HTMLElement

Вызывается только во внутренней области, обязательно переопределяется классами, расширяющими GridLayer. Возвращает HTMLElement, соответствующее заданному coords. Если указана обратная функция done, она должна быть вызвана, когда тайл завершит загрузку и отрисовку.

Метод Возвращает Описание
addTo(<Map> map) this

Добавляет слой на заданную карту.

remove() this

Удаляет слой с карты, на которой он сейчас активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий собой указанную панель на карте. Если name опущена, возвращает панель для этого слоя.

getAttribution() String

Используется attribution control, возвращает опцию атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающую подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передана обратная функция, она получит слой в качестве первого аргумента и должна вернуть 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

Возвращает true, если для определённого типа события есть присоединённые обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительский обработчик событий — Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родительский обработчик событий, чтобы он перестал получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

LatLng

Представляет географическую точку с определённой широтой и долготой.

Пример использования

var latlng = L.latLng(50.5, 30.5);

Все методы Leaflet, принимающие объекты LatLng, также принимают их в простом формате массива и простом формате объекта (если не указано иное), поэтому эти строки эквивалентны:

map.panTo([50, 30]);
map.panTo({lon: 30, lat: 50});
map.panTo({lat: 50, lng: 30});
map.panTo(L.latLng(50, 30));

Создание

Фабрика Описание
L.latLng(<Number> latitude, <Number> longitude, <Number> altitude?) Создаёт объект, представляющий географическую точку с заданной широтой и долготой (и необязательной высотой).
L.latLng(<Array> coords) Ожидает массив в формате [Number, Number] или [Number, Number, Number] вместо.
L.latLng(<Object> coords) Ожидает простой объект в формате {lat: Number, lng: Number} или {lat: Number, lng: Number, alt: Number} вместо.

Методы

Метод Возвращает Описание
equals(<LatLng> otherLatLng, <Number> maxMargin?) Boolean

Возвращает true, если заданная точка LatLng находится в той же позиции (в пределах небольшой погрешности). Погрешность можно переопределить, задав maxMargin небольшим числом.

toString() String

Возвращает строковое представление точки (для отладки).

distanceTo(<LatLng> otherLatLng) Number

Возвращает расстояние (в метрах) до заданной точки LatLng, вычисленное по формуле Haversine.

wrap() LatLng

Возвращает новый объект LatLng с долготой, обернутой так, чтобы она всегда находилась в диапазоне от -180 до +180 градусов.

toBounds(<Number> sizeInMeters) LatLngBounds

Возвращает новый объект LatLngBounds, в котором каждая граница находится на расстоянии sizeInMeters/2 метров от LatLng.

Свойства

Свойство Тип Описание
lat Number Latitude in degrees
lng Number Longitude in degrees
alt Number Altitude in meters (optional)

LatLngBounds

Представляет прямоугольную географическую область на карте.

Пример использования

var corner1 = L.latLng(40.712, -74.227),
corner2 = L.latLng(40.774, -74.125),
bounds = L.latLngBounds(corner1, corner2);

Все методы Leaflet, принимающие объекты LatLngBounds, также принимают их в простом формате массива (если не указано иное), поэтому пример с границами можно передать так:

map.fitBounds([
    [40.712, -74.227],
    [40.774, -74.125]
]);

Внимание: если область пересекает антимеридиан (часто путают с линией перемены дат), вы должны указать углы вне диапазона долготы [-180, 180] градусов.

Создание

Фабрика Описание
L.latLngBounds(<LatLng> corner1, <LatLng> corner2) Создаёт объект LatLngBounds, определив две диагонально противоположные вершины прямоугольника.
L.latLngBounds(<LatLng[]> latlngs) Создаёт объект LatLngBounds, определяемый географическими точками, которые он содержит. Очень полезно для масштабирования карты так, чтобы она охватывала определённый набор местоположений с помощью fitBounds.

Методы

Метод Возвращает Описание
extend(<LatLng> latlng) this

Расширить границы, чтобы они содержали данную точку.

extend(<LatLngBounds> otherBounds) this

Расширить границы, чтобы они содержали заданные границы.

pad(<Number> bufferRatio) LatLngBounds

Возвращает большие границы, созданные путём расширения текущих границ на заданный процент в каждом направлении.

getCenter() LatLng

Возвращает центральную точку границ.

getSouthWest() LatLng

Возвращает юго-западную точку границ.

getNorthEast() LatLng

Возвращает северо-восточную точку границ.

getNorthWest() LatLng

Возвращает северо-западную точку границ.

getSouthEast() LatLng

Возвращает юго-восточную точку границ.

getWest() Number

Возвращает западную долготу границ

getSouth() Number

Возвращает южную широту границ

getEast() Number

Возвращает восточную долготу границ

getNorth() Number

Возвращает северную широту границ

contains(<LatLngBounds> otherBounds) Boolean

Возвращает true, если прямоугольник содержит заданный прямоугольник.

contains(<LatLng> latlng) Boolean

Возвращает true, если прямоугольник содержит заданную точку.

intersects(<LatLngBounds> otherBounds) Boolean

Возвращает true, если прямоугольник пересекается с заданными границами. Две границы пересекаются, если у них есть хотя бы одна общая точка.

overlaps(<Bounds> otherBounds) Boolean

Возвращает true, если прямоугольник перекрывается с заданными границами. Две границы перекрываются, если их пересечение является областью.

toBBoxString() String

Возвращает строку с координатами прямоугольника в формате 'southwest_lng,southwest_lat,northeast_lng,northeast_lat'. Полезно для отправки запросов к веб-сервисам, возвращающим геоданные.

equals(<LatLngBounds> otherBounds) Boolean

Возвращает true, если прямоугольник эквивалентен (в пределах небольшой погрешности) заданным границам.

isValid() Boolean

Возвращает true, если границы инициализированы правильно.

Point

Представляет точку с координатами x и y в пикселях.

Пример использования

var point = L.point(200, 300);

Все методы и опции Leaflet, принимающие объекты Point, также принимают их в простом формате массива (если не указано иное). Эти строки эквивалентны:

map.panBy([200, 300]);
map.panBy(L.point(200, 300));

Создание

Фабрика Описание
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

Умножает каждую координату текущей точки на каждую координату scale. В терминах линейной алгебры, умножает точку на матрицу масштабирования, заданную scale.

unscaleBy(<Point> scale) Point

Обратная функция scaleBy. Делит каждую координату текущей точки на каждую координату scale.

round() Point

Возвращает копию текущей точки с округленными координатами.

floor() Point

Возвращает копию текущей точки с координатами, округленными вниз.

ceil() Point

Возвращает копию текущей точки с координатами, округленными вверх.

distanceTo(<Point> otherPoint) Number

Возвращает евклидово расстояние между текущей и заданной точками.

equals(<Point> otherPoint) Boolean

Возвращает true, если заданная точка имеет те же координаты.

contains(<Point> otherPoint) Boolean

Возвращает true, если обе координаты заданной точки меньше соответствующих координат текущей точки (по абсолютной величине).

toString() String

Возвращает строковое представление точки для отладки.

Свойства

Свойство Тип Описание
x Number The x coordinate of the point
y Number The y coordinate of the point

Границы

Представляет прямоугольную область в пиксельных координатах.

Пример использования

var p1 = L.point(10, 10),
p2 = L.point(40, 60),
bounds = L.bounds(p1, p2);

Все методы Leaflet, принимающие объекты Bounds, также принимают их в виде простого массива (если не указано иное), поэтому пример с границами можно передать так:

otherBounds.intersects([[10, 10], [40, 60]]);

Создание

Фабрика Описание
L.bounds(<Point> topLeft, <Point> bottomRight) Создаёт объект Bounds из двух координат (обычно верхний левый и нижний правый углы).
L.bounds(<Point[]> points) Создаёт объект Bounds из содержащихся в нём точек.

Методы

Метод Возвращает Описание
extend(<Point> point) this

Расширяет границы, чтобы они содержали заданную точку.

getCenter(<Boolean> round?) Point

Возвращает центральную точку границ.

getBottomLeft() Point

Возвращает нижнюю левую точку границ.

getTopRight() Point

Возвращает верхнюю правую точку границ.

getSize() Point

Возвращает размер заданных границ.

contains(<Bounds> otherBounds) Boolean

Возвращает true, если прямоугольник содержит заданный.

contains(<Point> point) Boolean

Возвращает true, если прямоугольник содержит заданную точку.

intersects(<Bounds> otherBounds) Boolean

Возвращает true, если прямоугольник пересекается с заданными границами. Две границы пересекаются, если у них есть хотя бы одна общая точка.

overlaps(<Bounds> otherBounds) Boolean

Возвращает true, если прямоугольник перекрывается с заданными границами. Две границы перекрываются, если их пересечение является областью.

Свойства

Свойство Тип Описание
min Point The top left corner of the rectangle.
max Point The bottom right corner of the rectangle.

Значок

Представляет значок для использования при создании метки.

Пример использования

var myIcon = L.icon({
    iconUrl: 'my-icon.png',
    iconSize: [38, 95],
    iconAnchor: [22, 94],
    popupAnchor: [-3, -76],
    shadowUrl: 'my-icon-shadow.png',
    shadowSize: [68, 95],
    shadowAnchor: [22, 94]
});
L.marker([50.505, 30.57], {icon: myIcon}).addTo(map);

L.Icon.Default расширяет L.Icon и является синим значком, который Leaflet использует для меток по умолчанию.

Создание

Фабрика Описание
L.icon(<Icon options> options) Создаёт экземпляр значка с заданными параметрами.

Параметры

Параметр Тип Значение по умолчанию Описание
iconUrl String null (обязательно) URL изображения значка (абсолютный или относительный к пути вашего скрипта).
iconRetinaUrl String null URL изображения значка высокого разрешения (абсолютный или относительный к пути вашего скрипта). Используется для устройств с экранами Retina.
iconSize Point null Размер изображения значка в пикселях.
iconAnchor Point null Координаты "верхушки" значка (относительно его верхнего левого угла). Значок будет выровнен таким образом, что эта точка будет находиться в географическом местоположении метки. По умолчанию центрирован, если задан размер, также можно задать в CSS с отрицательными отступами.
popupAnchor Point null Координаты точки, с которой "открываются" всплывающие окна, относительно якоря значка.
shadowUrl String null URL изображения тени значка. Если не указано, тень не будет создана.
shadowRetinaUrl String null
shadowSize Point null Размер изображения тени в пикселях.
shadowAnchor Point null Координаты "верхушки" тени (относительно её верхнего левого угла) (такие же, как iconAnchor, если не указано иначе).
className String '' Пользовательское имя класса, которое будет присвоено изображениям значка и тени. По умолчанию пустое.
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен к слою наложения карты. Переопределение этого параметра приведет к размещению слоя по умолчанию на другом слое.
attribution String null Строка, отображаемая в элементе управления подписью, описывает данные слоя, например, "© Mapbox".

События

Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
createIcon(<HTMLElement> oldIcon?) HTMLElement

Вызывается внутри, когда значок должен быть показан, возвращает элемент HTML <img>, стилизованный в соответствии с параметрами.

createShadow(<HTMLElement> oldIcon?) HTMLElement

Как createIcon, но для тени под ним.

Метод Возвращает Описание
addTo(<Map> map) this

Добавляет слой на указанную карту.

remove() this

Удаляет слой с карты, на которой он сейчас активен.

removeFrom(<Map> map) this

Удаляет слой с указанной карты.

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий указанный слой на карте. Если name опущен, возвращает слой для этого слоя.

getAttribution() String

Используется элементом управления подписью, возвращает параметр подписи.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Связывает всплывающее окно со слоем с переданным content и настраивает необходимые обработчики событий. Если передано Function, оно получит слой в качестве первого аргумента и должно вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее связанное с bindPopup.

openPopup(<LatLng> latlng?) this

Открывает связанное всплывающее окно в указанной latlng или в стандартном якоре всплывающего окна, если latlng не передан.

closePopup() this

Закрывает связанное всплывающее окно, если оно открыто.

togglePopup() this

Открывает или закрывает связанное всплывающее окно в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если связанное всплывающее окно в данный момент открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое связанного всплывающего окна.

getPopup() Popup

Возвращает связанное всплывающее окно.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает всплывающую подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет всплывающую подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку по указанным latlng или по умолчанию, если не передан latlng.

closeTooltip() this

Закрывает всплывающую подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает всплывающую подсказку, привязанную к этому слою, в зависимости от ее текущего состояния.

isTooltipOpen() boolean

Возвращает true, если всплывающая подсказка, привязанная к этому слою, в данный момент открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое всплывающей подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает всплывающую подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определённому типу события объекта. Вы можете указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Вы также можете передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, удаляет все обработчики данного события от объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете дополнительно передать объект данных — первый аргумент функции-обработчика будет содержать его свойства. Событие может быть дополнительно распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события есть какие-либо прикреплённые обработчики.

once(…) this

Ведет себя как on(…), за исключением того, что обработчик будет вызван только один раз, а затем удален.

addEventParent(<Evented> obj) this

Добавляет родителя события — Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родителя события, так что он перестанет получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Icon.Default

Тривиальный подкласс Icon, представляющий значок, используемый в Marker при отсутствии указанного значка. Ссылается на изображение синего маркера, распространяемого вместе с выпусками Leaflet. Для настройки значка по умолчанию просто измените свойства L.Icon.Default.prototype.options (который представляет собой набор Icon options). Если вы хотите полностью заменить значок по умолчанию, переопределите L.Marker.prototype.options.icon собственным значком.
Параметр Тип Значение по умолчанию Описание
imagePath String L.Icon.Default будет пытаться автоматически определить абсолютное расположение изображений синего значка. Если вы размещаете эти изображения нестандартным способом, установите этот параметр для указания правильного абсолютного пути.

DivIcon

Представляет лёгкий значок для маркеров, использующий простой элемент <div> вместо изображения. Унаследован от Icon, но игнорирует параметры iconUrl и shadow.

Пример использования

var myIcon = L.divIcon({className: 'my-div-icon'});
// you can set .my-div-icon styles in CSS
L.marker([50.505, 30.57], {icon: myIcon}).addTo(map);

По умолчанию он имеет класс CSS 'leaflet-div-icon' и стилизован как небольшой белый квадрат с тенью.

Создание

Фабрика Описание
L.divIcon(<DivIcon options> options) Создаёт экземпляр DivIcon с заданными параметрами.

Параметры

Параметр Тип Значение по умолчанию Описание
html String '' Пользовательский HTML-код для размещения внутри элемента div, по умолчанию пустое.
bgPos Point [0, 0] Необязательная относительная позиция фона в пикселях.
Параметр Тип Значение по умолчанию Описание
iconUrl String null (обязательно) URL изображения значка (абсолютный или относительно пути к вашему скрипту).
iconRetinaUrl String null URL изображения значка с высоким разрешением (абсолютный или относительно пути к вашему скрипту). Используется для устройств с экранами Retina.
iconSize Point null Размер изображения значка в пикселях.
iconAnchor Point null Координаты «кончика» значка (относительно его верхнего левого угла). Значок будет выровнен так, чтобы эта точка находилась в географическом местоположении маркера. По умолчанию центрируется, если задан размер, также можно задать в CSS с отрицательными отступами.
popupAnchor Point null Координаты точки, с которой «откроются» всплывающие окна, относительно якоря значка.
shadowUrl String null URL изображения тени значка. Если не указано, изображение тени не будет создано.
shadowRetinaUrl String null
shadowSize Point null Размер изображения тени в пикселях.
shadowAnchor Point null Координаты «кончика» тени (относительно её верхнего левого угла) (то же, что и iconAnchor, если не указано).
className String '' Пользовательское имя класса, которое будет назначено как изображению значка, так и изображению тени. По умолчанию пустое.
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на панель overlay pane карты. Переопределение этого параметра приведет к размещению слоя на другой панели по умолчанию.
attribution String null Строка, отображаемая в элементе управления атрибуцией, описывающая данные слоя, например, «© Mapbox».

События

Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
createIcon(<HTMLElement> oldIcon?) HTMLElement

Вызывается внутренне, когда иконка должна быть отображена, возвращает элемент HTML <img>, стилизованный в соответствии с параметрами.

createShadow(<HTMLElement> oldIcon?) HTMLElement

Как createIcon, но для тени под ней.

Метод Возвращает Описание
addTo(<Map> map) this

Добавляет слой на заданную карту

remove() this

Удаляет слой с карты, на которой он сейчас активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий собой область с заданным именем на карте. Если name опущено, возвращает область для данного слоя.

getAttribution() String

Используется attribution control, возвращает параметр атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Связывает всплывающее окно со слоем с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее связанное с bindPopup.

openPopup(<LatLng> latlng?) this

Открывает связанное всплывающее окно в указанной latlng или по умолчанию, если latlng не передан.

closePopup() this

Закрывает всплывающее окно, связанное с этим слоем, если оно открыто.

togglePopup() this

Открывает или закрывает всплывающее окно, связанное с этим слоем, в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающее окно, связанное с этим слоем, в настоящее время открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, связанного с этим слоем.

getPopup() Popup

Возвращает всплывающее окно, связанное с этим слоем.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Связывает всплывающую подсказку со слоем с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет всплывающую подсказку, ранее связанную с bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает связанную всплывающую подсказку в указанной latlng или по умолчанию, если latlng не передан.

closeTooltip() this

Закрывает всплывающую подсказку, связанную с этим слоем, если она открыта.

toggleTooltip() this

Открывает или закрывает всплывающую подсказку, связанную с этим слоем, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если всплывающая подсказка, связанная с этим слоем, в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое всплывающей подсказки, связанной с этим слоем.

getTooltip() Tooltip

Возвращает всплывающую подсказку, связанную с этим слоем.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определённому типу события объекта. Можно указать контекст обработчика (объект, к которому будет относиться this). Можно передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, удалит все обработчики этого конкретного события из объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий в объекте.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Можно дополнительно передать объект данных — свойства этого объекта будут первым аргументом функции-обработчика. Событие может быть дополнительно распространено на родительские объекты событий.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события прикреплены какие-либо обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительский объект события — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительский объект события, чтобы он перестал получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Управление масштабом

Базовое управление масштабом с двумя кнопками (увеличить и уменьшить масштаб). По умолчанию отображается на карте, если не установлено значение zoomControl параметра в false. Расширяет Control.

Создание

Фабрика Описание
L.control.zoom(<Control.Zoom options> options) Создаёт управление масштабом

Параметры

Опция Тип По умолчанию Описание
zoomInText String '+' Текст, устанавливаемый на кнопке «Увеличить».
zoomInTitle String 'Zoom in' Заголовок, устанавливаемый на кнопке «Увеличить».
zoomOutText String '-' Текст, устанавливаемый на кнопке «Уменьшить».
zoomOutTitle String 'Zoom out' Заголовок, устанавливаемый на кнопке «Уменьшить».
Опция Тип По умолчанию Описание
position String 'topright' Положение элемента управления (один из углов карты). Возможные значения: 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

Метод Возвращает Описание
getPosition() string

Возвращает положение элемента управления.

setPosition(<string> position) this

Устанавливает положение элемента управления.

getContainer() HTMLElement

Возвращает HTMLElement, содержащий элемент управления.

addTo(<Map> map) this

Добавляет элемент управления на заданную карту.

remove() this

Удаляет элемент управления с активной карты.

Control.Attribution

Элемент управления атрибутами позволяет отображать данные об атрибутах на карте в небольшом текстовом поле. Он добавляется на карту по умолчанию, если вы не установили его attributionControl опцию в false, и он автоматически извлекает тексты атрибуции из слоев с помощью getAttribution метода. Расширяет Control.

Создание

Фабрика Описание
L.control.attribution(<Control.Attribution options> options) Создаёт элемент управления атрибуцией.

Опции

Опция Тип По умолчанию Описание
prefix String 'Leaflet' HTML-текст, отображаемый перед атрибуциями. Используйте false для отключения.
Опция Тип По умолчанию Описание
position String 'topright' Положение элемента управления (один из углов карты). Возможные значения: 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

Метод Возвращает Описание
setPrefix(<String> prefix) this

Устанавливает текст перед атрибуциями.

addAttribution(<String> text) this

Добавляет текст атрибуции (например, 'Vector data &copy; Mapbox').

removeAttribution(<String> text) this

Удаляет текст атрибуции.

Метод Возвращает Описание
getPosition() string

Возвращает положение элемента управления.

setPosition(<string> position) this

Устанавливает положение элемента управления.

getContainer() HTMLElement

Возвращает HTMLElement, содержащий элемент управления.

addTo(<Map> map) this

Добавляет элемент управления на заданную карту.

remove() this

Удаляет элемент управления с активной карты.

Control.Layers

Элемент управления слоями позволяет пользователям переключаться между различными базовыми слоями и включать/выключать наложения (см. подробный пример). Расширяет Control.

Пример использования

var baseLayers = {
    "Mapbox": mapbox,
    "OpenStreetMap": osm
};
var overlays = {
    "Marker": marker,
    "Roads": roadsLayer
};
L.control.layers(baseLayers, overlays).addTo(map);

Параметры baseLayers и overlays представляют собой литералы объектов с именами слоев в качестве ключей и объектами Layer в качестве значений:

{
    "<someName1>": layer1,
    "<someName2>": layer2
}

Имена слоёв могут содержать HTML, что позволяет добавлять дополнительное форматирование к элементам:

{"<img src='my-layer-icon' /> <span class='my-layer-item'>My Layer</span>": myLayer}

Создание

Фабрика Описание
L.control.layers(<Object> baselayers?, <Object> overlays?, <Control.Layers options> options?) Создаёт элемент управления атрибуцией с заданными слоями. Базовые слои будут переключаться с помощью радиокнопок, а наложения — с помощью флажков. Обратите внимание, что все базовые слои должны быть переданы в объекте baseLayers, но только один должен быть добавлен на карту при инициализации карты.

Опции

Опция Тип По умолчанию Описание
collapsed Boolean true Если true, элемент управления будет свёрнут в значок и развернётся при наведении или касании.
autoZIndex Boolean true Если true, элемент управления будет назначать zIndexes в порядке возрастания всем своим слоям, так что порядок сохраняется при включении/выключении.
hideSingleBase Boolean false Если true, базовые слои в элементе управления будут скрыты, когда их останется только один.
sortLayers Boolean false Нужно ли сортировать слои. Если false, слои сохранят порядок, в котором они были добавлены в элемент управления.
sortFunction Function * Функция сравнения для сортировки слоёв, когда sortLayers равна true. Функция получает экземпляры L.Layer и их имена, как в sortFunction(layerA, layerB, nameA, nameB). По умолчанию слои сортируются по имени в алфавитном порядке.
Опция Тип По умолчанию Описание
position String 'topright' Положение элемента управления (один из углов карты). Возможные значения: 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

Метод Возвращает Описание
addBaseLayer(<Layer> layer, <String> name) this

Добавляет базовый слой (элемент с радиокнопкой) с заданным именем в элемент управления.

addOverlay(<Layer> layer, <String> name) this

Добавляет наложение (элемент с флажком) с заданным именем в элемент управления.

removeLayer(<Layer> layer) this

Удаляет заданный слой из элемента управления.

expand() this

Развернуть контейнер элемента управления, если он свёрнут.

collapse() this

Свернуть контейнер элемента управления, если он развернут.

Метод Возвращает Описание
getPosition() string

Возвращает положение элемента управления.

setPosition(<string> position) this

Устанавливает положение элемента управления.

getContainer() HTMLElement

Возвращает HTMLElement, содержащий элемент управления.

addTo(<Map> map) this

Добавляет элемент управления на заданную карту.

remove() this

Удаляет элемент управления с карты, на которой он сейчас активен.

Control.Scale

Простой элемент управления масштабом, отображающий масштаб текущего центра экрана в метрической (м/км) и имперской (ми/футах) системах. Расширяет Control.

Пример использования

L.control.scale().addTo(map);

Создание

Фабрика Описание
L.control.scale(<Control.Scale options> options?) Создает элемент управления масштабом с заданными параметрами.

Параметры

Параметр Тип Значение по умолчанию Описание
maxWidth Number 100 Максимальная ширина элемента управления в пикселях. Ширина устанавливается динамически для отображения целых значений (например, 100, 200, 500).
metric Boolean True Отображать ли метрическую шкалу (м/км).
imperial Boolean True Отображать ли имперскую шкалу (ми/футах).
updateWhenIdle Boolean false Если true, элемент управления обновляется при событии moveend, в противном случае он всегда обновлён (обновляется при событии move).
Параметр Тип Значение по умолчанию Описание
position String 'topright' Положение элемента управления (один из углов карты). Возможные значения: 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

Метод Возвращает Описание
getPosition() string

Возвращает положение элемента управления.

setPosition(<string> position) this

Устанавливает положение элемента управления.

getContainer() HTMLElement

Возвращает HTMLElement, содержащий элемент управления.

addTo(<Map> map) this

Добавляет элемент управления на заданную карту.

remove() this

Удаляет элемент управления с карты, на которой он сейчас активен.

Браузер

Пространство имён со статическими свойствами для обнаружения браузера/функций, используемое Leaflet внутри.

Пример использования

if (L.Browser.ielt9) {
  alert('Upgrade your browser, dude!');
}

Свойства

Свойство Тип Описание
ie Boolean true for all Internet Explorer versions (not Edge).
ielt9 Boolean true for Internet Explorer versions less than 9.
edge Boolean true for the Edge web browser.
webkit Boolean true for webkit-based browsers like Chrome and Safari (including mobile versions).
gecko Boolean true for gecko-based browsers like Firefox.
android Boolean true for any browser running on an Android platform.
android23 Boolean true for browsers running on Android 2 or Android 3.
chrome Boolean true for the Chrome browser.
safari Boolean true for the Safari browser.
win Boolean true when the browser is running in a Windows platform
ie3d Boolean true for all Internet Explorer versions supporting CSS transforms.
webkit3d Boolean true for webkit-based browsers supporting CSS transforms.
gecko3d Boolean true for gecko-based browsers supporting CSS transforms.
opera12 Boolean true for the Opera browser supporting CSS transforms (version 12 or later).
any3d Boolean true for all browsers supporting CSS transforms.
mobile Boolean true for all browsers running in a mobile device.
mobileWebkit Boolean true for all webkit-based browsers in a mobile device.
mobileWebkit3d Boolean true for all webkit-based browsers in a mobile device supporting CSS transforms.
mobileOpera Boolean true for the Opera browser in a mobile device.
mobileGecko Boolean true for gecko-based browsers running in a mobile device.
touch Boolean true for all browsers supporting touch events. This does not necessarily mean that the browser is running in a computer with a touchscreen, it only means that the browser is capable of understanding touch events.
msPointer Boolean true for browsers implementing the Microsoft touch events model (notably IE10).
pointer Boolean true for all browsers supporting pointer events.
retina Boolean true for browsers on a high-resolution "retina" screen.
canvas Boolean true when the browser supports <canvas>.
vml Boolean true if the browser supports VML.
svg Boolean true when the browser supports SVG.

Утилиты

Различные утилитарные функции, используемые 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.bind.
wrapNum(<Number> num, <Number[]> range, <Boolean> includeMax?) Number Возвращает число num по модулю range таким образом, чтобы оно находилось в диапазоне от range[0] до range[1]. Возвращаемое значение всегда будет меньше range[1], если не установлено includeMax на true.
falseFn() Function Возвращает функцию, которая всегда возвращает false.
formatNum(<Number> num, <Number> digits?) Number Возвращает число num, округлённое до digits десятичных знаков или до 5 десятичных знаков по умолчанию.
trim(<String> str) String Полифил для совместимости с String.prototype.trim
splitWords(<String> str) String[] Удаляет пробелы и разделяет строку по пробелам, возвращая массив частей.
setOptions(<Object> obj, <Object> options) Object Объединяет заданные свойства с опциями объекта options объекта obj, возвращая результирующие опции. См. Class options. Имеет сокращение L.setOptions.
getParamString(<Object> obj, <String> existingUrl?, <Boolean> uppercase?) String Преобразует объект в строку параметров URL, например, {a: "foo", b: "bar"} преобразуется в '?a=foo&b=bar'. Если установлено existingUrl, параметры будут добавлены в конец. Если uppercase установлено на true, имена параметров будут приведены к верхнему регистру (например, '?A=foo&B=bar').
template(<String> str, <Object> data) String Простая система шаблонизации, принимает шаблонную строку вида 'Hello {a}, {b}' и объект данных, как {a: 'foo', b: 'bar'}, возвращает обработанную строку ('Hello foo, bar'). Также можно указать функции вместо строк для значений данных — они будут вычислены, передав data в качестве аргумента.
isArray(obj) Boolean Полифил для совместимости с Array.isArray
indexOf(<Array> array, <Object> el) Number Полифил для совместимости с Array.prototype.indexOf
requestAnimFrame(<Function> fn, <Object> context?, <Boolean> immediate?) Number Планирует выполнение fn при перерисовке браузера. fn привязывается к context, если указано. При установке immediate, fn вызывается немедленно, если браузер не поддерживает window.requestAnimationFrame, иначе откладывается. Возвращает идентификатор запроса, который можно использовать для отмены запроса.
cancelAnimFrame(<Number> id) undefined Отменяет предыдущий requestAnimFrame. Смотрите также window.cancelAnimationFrame.

Свойства

Свойство Тип Описание
lastId Number Last unique ID used by stamp()
emptyImageUrl String Data URI string containing a base64-encoded empty GIF image. Used as a hack to free memory from unused images on WebKit-powered mobile devices (by setting image src to this string).

Преобразование

Представляет аффинное преобразование: набор коэффициентов a, b, c, d для преобразования точки вида (x, y) в (a*x + b, c*y + d) и обратное преобразование. Используется Leaflet в коде проекций.

Пример использования

var transformation = new 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)

Методы

Метод Возвращает Описание
transform(<Point> point, <Number> scale?) Point

Возвращает преобразованную точку, необязательно умноженную на заданный масштаб. Принимает только объекты L.Point, а не массивы.

untransform(<Point> point, <Number> scale?) Point

Возвращает обратное преобразование заданной точки, необязательно делённой на заданный масштаб. Принимает только объекты L.Point, а не массивы.

LineUtil

Различные вспомогательные функции для обработки точек полилиний, используемые Leaflet для повышения производительности при работе с полилиниями.

Функции

Функция Возвращает Описание
simplify(<Point[]> points, <Number> tolerance) Point[] Значительно уменьшает количество точек в полилинии, сохраняя её форму, и возвращает новый массив упрощённых точек, используя алгоритм Douglas-Peucker. Используется для повышения производительности при обработке/отображении полилиний Leaflet на различных уровнях масштабирования, а также для снижения визуального шума. Параметр tolerance влияет на степень упрощения (меньшее значение означает более высокое качество, но медленнее и с большим количеством точек). Также выпущен как отдельный микробиблиотека Simplify.js.
pointToSegmentDistance(<Point> p, <Point> p1, <Point> p2) Number Возвращает расстояние между точкой p и отрезком p1 до p2.
closestPointOnSegment(<Point> p, <Point> p1, <Point> p2) Number Возвращает ближайшую точку от точки p на отрезке p1 к точке p2.
clipSegment(<Point> a, <Point> b, <Bounds> bounds, <Boolean> useLastCode?, <Boolean> round?) Point[]|Boolean Обрезает отрезок a до b с помощью прямоугольных границ с использованием алгоритма Cohen-Sutherland (изменяя точки отрезка непосредственно!). Используется Leaflet для отображения только тех точек полилинии, которые находятся на экране или рядом с ним, повышая производительность.

PolyUtil

Различные вспомогательные функции для геометрий полигонов.

Функции

Функция Возвращает Описание
clipPolygon(<Point[]> points, <Bounds> bounds, <Boolean> round?) Point[] Обрезает геометрию полигона, определённую заданным points, с помощью заданных границ (используя алгоритм Sutherland-Hodgman). Используется Leaflet для отображения только тех точек полигона, которые находятся на экране или рядом с ним, повышая производительность. Обратите внимание, что для обрезки точек полигона требуется другой алгоритм, чем для полилинии, поэтому для этого есть отдельный метод.

DomEvent

Вспомогательные функции для работы с событиями DOM, используемые Leaflet внутри.

Функции

Функция Возвращает Описание
on(<HTMLElement> el, <String> types, <Function> fn, <Object> context?) this Добавляет функцию-обработчик (fn) к определённому типу события DOM элемента el. Можно указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Можно также передать несколько типов через пробел (например, 'click dblclick').
on(<HTMLElement> el, <Object> eventMap, <Object> context?) this Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}
off(<HTMLElement> el, <String> types, <Function> fn, <Object> context?) this Удаляет ранее добавленную функцию-обработчик. Если функция не указана, удаляет все обработчики данного типа события DOM для элемента. Обратите внимание, что если вы передали пользовательский контекст в on, необходимо передать тот же контекст в off для удаления обработчика.
off(<HTMLElement> el, <Object> eventMap, <Object> context?) this Удаляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}
stopPropagation(<DOMEvent> ev) this Остановить распространение данного события на родительские элементы. Используется внутри функций-обработчиков:
L.DomEvent.on(div, 'click', function (ev) {
    L.DomEvent.stopPropagation(ev);
});
disableScrollPropagation(<HTMLElement> el) this Добавляет stopPropagation к событиям 'mousewheel' элемента (плюс варианты браузера).
disableClickPropagation(<HTMLElement> el) this Добавляет stopPropagation к событиям 'click', 'doubleclick', 'mousedown' и 'touchstart' элемента (плюс варианты браузера).
preventDefault(<DOMEvent> ev) this Предотвращает выполнение стандартного действия события DOM ev (например, перехода по ссылке в атрибуте href элемента a или выполнение POST-запроса с перезагрузкой страницы при отправке формы <form>). Используйте внутри функций-обработчиков.
stop(ev) this Выполняет stopPropagation и preventDefault одновременно.
getMousePosition(<DOMEvent> ev, <HTMLElement> container?) Point Получает нормализованные координаты мыши из события DOM относительно container или всей страницы, если не указано иное.
getWheelDelta(<DOMEvent> ev) Number Получает нормализованный скролл мыши из события DOM, в пикселях по вертикали (отрицательное значение при прокрутке вниз). События от указательных устройств без точной прокрутки отображаются с приблизительным значением в 60 пикселей.
addListener(…) this Псевдоним для L.DomEvent.on
removeListener(…) this Псевдоним для L.DomEvent.off

DomUtil

Утилитарные функции для работы с деревом DOM DOM, используемые Leaflet внутри. Большинство функций, ожидающих или возвращающих HTMLElement, также работают с элементами SVG. Единственное отличие заключается в том, что классы относятся к классам CSS в HTML и классам SVG в SVG.

Функции

Функция Возвращает Описание
get(<String|HTMLElement> id) HTMLElement Возвращает элемент по его идентификатору DOM или возвращает сам элемент, если он был передан напрямую.
getStyle(<HTMLElement> el, <String> styleAttrib) String Возвращает значение определённого атрибута стиля элемента, включая вычисленные значения или значения, установленные через CSS.
create(<String> tagName, <String> className?, <HTMLElement> container?) HTMLElement Создаёт HTML-элемент с tagName, устанавливает его класс в className и необязательно добавляет его в элемент container.
remove(<HTMLElement> el) Удаляет el из его родительского элемента
empty(<HTMLElement> el) Удаляет все дочерние элементы el из el
toFront(<HTMLElement> el) Делает el последним ребёнком его родителя, чтобы он отображался поверх других детей.
toBack(<HTMLElement> el) Делает el первым ребёнком его родителя, чтобы он отображался позади других детей.
hasClass(<HTMLElement> el, <String> name) Boolean Возвращает true, если атрибут класса элемента содержит name.
addClass(<HTMLElement> el, <String> name) Добавляет name к атрибуту класса элемента.
removeClass(<HTMLElement> el, <String> name) Удаляет name из атрибута класса элемента.
setClass(<HTMLElement> el, <String> name) Устанавливает класс элемента.
getClass(<HTMLElement> el) String Возвращает класс элемента.
setOpacity(<HTMLElement> el, <Number> opacity) Устанавливает непрозрачность элемента (включая поддержку старых версий IE). opacity должно быть числом от 0 до 1.
testProp(<String[]> props) String|false Перебирает массив имён стилей и возвращает первое имя, которое является допустимым именем стиля для элемента. Если такого имени не найдено, возвращает false. Полезно для стилей с префиксом производителя, таких как transform.
setTransform(<HTMLElement> el, <Point> offset, <Number> scale?) Сбрасывает 3D CSS-трансформацию el, так что она будет сдвинута на offset пикселей и необязательно масштабирована на scale. Не имеет эффекта, если браузер не поддерживает 3D CSS-трансформации.
setPosition(<HTMLElement> el, <Point> position) Устанавливает положение el в указанные координаты position, используя CSS-сдвиг или позиционирование top/left в зависимости от браузера (используется Leaflet внутри для позиционирования слоёв).
getPosition(<HTMLElement> el) Point Возвращает координаты элемента, ранее позиционированного с помощью setPosition.
disableTextSelection() Препятствует генерации пользователем событий selectstart DOM, обычно генерируемых при перетаскивании мыши по странице с текстом. Используется внутри Leaflet для переопределения поведения любых взаимодействий с перетаскиванием по карте. Воздействует на взаимодействия с перетаскиванием на всей странице.
enableTextSelection() Отменяет действия предыдущего L.DomUtil.disableTextSelection.
disableImageDrag() Как L.DomUtil.disableTextSelection, но для событий dragstart DOM, обычно генерируемых при перетаскивании изображения.
enableImageDrag() Отменяет действия предыдущего L.DomUtil.disableImageDrag.
preventOutline(<HTMLElement> el) Делает рамку элемента el невидимой. Используется внутри Leaflet для предотвращения отображения рамки фокусируемых элементов, когда пользователь выполняет взаимодействие с перетаскиванием.
restoreOutline() Отменяет действия предыдущего L.DomUtil.preventOutline.

Свойства

Свойство Тип Описание
TRANSFORM String Vendor-prefixed fransform style name (e.g. 'webkitTransform' for WebKit).
TRANSITION String Vendor-prefixed transform style name.

PosAnimation

Используется внутри для анимаций перемещения, используя CSS3 Transitions для современных браузеров и таймер для IE6-9.

Пример использования

var fx = new L.PosAnimation();
fx.run(el, [300, 500], 0.5);

Конструктор

Конструктор Описание
L.PosAnimation() Создаёт объект PosAnimation.

События

Событие Данные Описание
start Event Fired when the animation starts
step Event Fired continuously during the animation.
end Event Fired when the animation ends.

Методы

Метод Возвращает Описание
run(<HTMLElement> el, <Point> newPos, <Number> duration?, <Number> easeLinearity?)

Запустить анимацию заданного элемента до нового положения, необязательно указав продолжительность в секундах (по умолчанию 0.25) и коэффициент линейности сглаживания (третий аргумент кривой кубического безиера, по умолчанию 0.5).

stop()

Остановить анимацию (если она запущена).

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет обработчик событий (fn) к определённому типу события объекта. Вы можете указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Также можно передать несколько типов, разделённых пробелом (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар «тип/обработчик», например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленный обработчик событий. Если функция не указана, будут удалены все обработчики указанного события из объекта. Обратите внимание, что если вы передали контекст обработчика on, вы должны передать тот же контекст для off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар «тип/обработчик».

off() this

Удаляет все обработчики всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно указать объект данных — первый аргумент функции обработчика будет содержать его свойства. Событие необязательно может быть распространено на родительские обработчики событий.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события есть какие-либо прикреплённые обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительский обработчик событий — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительский обработчик событий, поэтому он перестанет получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Перетаскиваемый

Класс для создания перетаскиваемых элементов DOM (включая поддержку сенсорных устройств). Используется внутри для перетаскивания карт и маркеров. Работает только для элементов, позиционированных с помощью L.DomUtil.setPosition.

Пример использования

var draggable = new L.Draggable(elementToDrag);
draggable.enable();

Конструктор

Конструктор Описание
L.Draggable(<HTMLElement> el, <HTMLElement> dragHandle?, <Boolean> preventOutline) Создаёт объект Draggable для перемещения el при начале перетаскивания элемента dragHandle (по умолчанию равен самому el).

Параметры

Параметр Тип Значение по умолчанию Описание
clickTolerance Number 3 Максимальное количество пикселей, на которое пользователь может сдвинуть указатель мыши во время нажатия, чтобы оно считалось действительным щелчком (в отличие от перетаскивания мышью).

События

Событие Данные Описание
down Event Fired when a drag is about to start.
dragstart Event Fired when a drag starts
predrag Event Fired continuously during dragging before each corresponding update of the element's position.
drag Event Fired continuously during dragging.
dragend DragEndEvent Fired when the drag ends.

Методы

Метод Возвращает Описание
enable()

Включает возможность перетаскивания

disable()

Отключает возможность перетаскивания

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет обработчик событий (fn) к определённому типу события объекта. Вы можете указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Также можно передать несколько типов, разделённых пробелом (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар «тип/обработчик», например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленный обработчик событий. Если функция не указана, будут удалены все обработчики указанного события из объекта. Обратите внимание, что если вы передали контекст обработчика on, вы должны передать тот же контекст для off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар «тип/обработчик».

off() this

Удаляет все обработчики всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно указать объект данных — первый аргумент функции обработчика будет содержать его свойства. Событие необязательно может быть распространено на родительские обработчики событий.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события есть какие-либо прикреплённые обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительский обработчик событий — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительский обработчик событий, поэтому он перестанет получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Класс

L.Class обеспечивает возможности объектно-ориентированного программирования в Leaflet и используется для создания практически всех классов Leaflet, описанных здесь. Помимо реализации простой модели наследования, он вводит несколько специальных свойств для удобной организации кода — options, includes и statics.

Пример использования

var MyClass = L.Class.extend({
initialize: function (greeter) {
    this.greeter = greeter;
    // class constructor
},
greet: function (name) {
    alert(this.greeter + ', ' + name)
    }
});
// create instance of MyClass, passing "Hello" to the constructor
var a = new MyClass("Hello");
// call greet method, alerting "Hello, World"
a.greet("World");

Фабрики классов

Вы, возможно, заметили, что объекты Leaflet создаются без использования ключевого слова new. Это достигается путём дополнения каждого класса фабричным методом в нижнем регистре:

new L.Map('map'); // becomes:
L.map('map');

Фабрики реализуются очень просто, и вы можете сделать это для собственных классов:

L.map = function (id, options) {
    return new L.Map(id, options);
};

Наследование

Вы используете L.Class.extend для определения новых классов, но вы можете использовать тот же метод для наследования от любого класса:

var MyChildClass = MyClass.extend({
    // ... new properties and methods
});

Это создаст класс, который наследует все методы и свойства родительского класса (через цепочку прототипов), добавляя или переопределяя те, которые вы передаёте в extend. Он также правильно отреагирует на instanceof:

var a = new MyChildClass();
a instanceof MyChildClass; // true
a instanceof MyClass; // true

Вы можете вызывать родительские методы (включая конструктор) из соответствующих дочерних (как вы делаете с вызовами super в других языках) путём доступа к прототипу родительского класса и использования JavaScript call или apply:

var MyChildClass = MyClass.extend({
    initialize: function () {
        MyClass.prototype.initialize.call(this, "Yo");
    },
    greet: function (name) {
        MyClass.prototype.greet.call(this, 'bro ' + name + '!');
    }
});
var a = new MyChildClass();
a.greet('Jason'); // alerts "Yo, bro Jason!"

Параметры

options — специальное свойство, которое, в отличие от других объектов, передаваемых в extend, будет объединено с родительским, вместо полного его переопределения, что делает удобным управление конфигурацией объектов и значениями по умолчанию:

var MyClass = L.Class.extend({
    options: {
        myOption1: 'foo',
        myOption2: 'bar'
    }
});
var MyChildClass = MyClass.extend({
    options: {
        myOption1: 'baz',
        myOption3: 5
    }
});
var a = new MyChildClass();
a.options.myOption1; // 'baz'
a.options.myOption2; // 'bar'
a.options.myOption3; // 5
END_OF_DOCUMENT_MARKER

Также есть L.Util.setOptions, метод для удобного объединения параметров, переданных конструктору, со значениями по умолчанию, определёнными в классе:

var MyClass = L.Class.extend({
    options: {
        foo: 'bar',
        bla: 5
    },
    initialize: function (options) {
        L.Util.setOptions(this, options);
        ...
    }
});
var a = new MyClass({bla: 10});
a.options; // {foo: 'bar', bla: 10}

Включения

includes — это специальное свойство класса, которое объединяет все указанные объекты в класс (такие объекты называются миксинами).

 var MyMixin = {
    foo: function () { ... },
    bar: 5
};
var MyClass = L.Class.extend({
    includes: MyMixin
});
var a = new MyClass();
a.foo();

Вы также можете выполнить такие включения во время выполнения с методом include:

MyClass.include(MyMixin);

statics — просто удобное свойство, которое вставляет свойства указанного объекта в качестве статических свойств класса, полезное для определения констант:

var MyClass = L.Class.extend({
    statics: {
        FOO: 'bar',
        BLA: 5
    }
});
MyClass.FOO; // 'bar'

Обработчики конструктора

Если вы разработчик плагина, вам часто нужно добавлять дополнительный код инициализации к существующим классам (например, редактирование обработчиков для L.Polyline). Leaflet предоставляет способ сделать это легко с помощью метода addInitHook:

MyClass.addInitHook(function () {
    // ... do something in constructor additionally
    // e.g. add event listeners, set custom properties etc.
});

Вы также можете использовать следующий сокращенный вариант, когда вам нужно выполнить только один дополнительный вызов метода:

MyClass.addInitHook('methodName', arg1, arg2, …);

Функции

Функция Возвращает Описание
extend(<Object> props) Function Расширяет текущий класс с учётом указанных свойств. Возвращает функцию JavaScript, которая является конструктором класса (должна вызываться с new).
include(<Object> properties) this Включает миксин в текущий класс.
mergeOptions(<Object> options) this Объединяет options в значения по умолчанию класса.
addInitHook(<Function> fn) this Добавляет обработчик конструктора в класс.

Событийный

Набор методов, общих для классов, основанных на событиях (например, Map и Marker). В целом, события позволяют вам выполнить некоторую функцию, когда что-то происходит с объектом (например, пользователь нажимает на карту, что вызывает срабатывание события 'click').

Пример использования

map.on('click', function(e) {
    alert(e.latlng);
} );

Leaflet работает с обработчиками событий по ссылке, поэтому если вы хотите добавить обработчик и затем удалить его, определите его как функцию:

function onClick(e) { ... }
map.on('click', onClick);
map.off('click', onClick);

Методы

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определённому типу события объекта. Вы можете необязательно указать контекст обработчика (объект, к которому будет относиться this). Вы также можете передать несколько типов, разделённых пробелами (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, он удалит всех обработчиков этого события из объекта. Обратите внимание, что если вы передали пользовательский контекст для on, вы должны передать тот же контекст в off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет всех обработчиков всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно предоставить объект данных — первый аргумент функции обработчика будет содержать его свойства. Событие необязательно может быть распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события есть какие-либо прикреплённые обработчики.

once(…) this

Поведение аналогично on(…), за исключением того, что обработчик будет вызван один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родителя события — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родителя события, поэтому он перестанет получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Слой

Набор методов из базового класса Layer, используемый всеми слоями Leaflet. Наследует все методы, параметры и события из L.Evented.

Пример использования

var layer = L.Marker(latlng).addTo(map);
layer.addTo(map);
layer.remove();

Параметры

Параметр Тип По умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на перекрывающийся слой карты overlay pane. Переопределение этого параметра заставит слой по умолчанию размещаться на другом слое.
attribution String null Строка, отображаемая в элементе управления атрибутами, описывает данные слоя, например "© Mapbox".

События

Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map

События всплывающей подсказки

Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed

События подсказки

Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Классы, расширяющие L.Layer, унаследуют следующие методы:
Метод Возвращает Описание
addTo(<Map> map) this

Добавляет слой на заданную карту

remove() this

Удаляет слой с карты, на которой он сейчас активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий слой с заданным именем на карте. Если name опущено, возвращает слой для этого слоя.

getAttribution() String

Используется элементом управления атрибутами, возвращает параметр атрибуции.

Методы расширения

Каждый слой должен быть расширен от L.Layer и (пере-)реализовывать следующие методы.
Метод Возвращает Описание
onAdd(<Map> map) this

Должно содержать код, создающий DOM-элементы для слоя, добавляющий их в map panes, где они должны находиться, и устанавливающий обработчики событий карты. Вызывается при map.addLayer(layer).

onRemove(<Map> map) this

Должно содержать весь код очистки, удаляющий элементы слоя из DOM и удаляющий обработчики, ранее добавленные в onAdd. Вызывается при map.removeLayer(layer).

getEvents() Object

Этот необязательный метод должен возвращать объект, похожий на { viewreset: this._reset } для addEventListener. Обработчики событий в этом объекте будут автоматически добавляться и удаляться с карты вместе с вашим слоем.

getAttribution() String

Этот необязательный метод должен возвращать строку, содержащую HTML, который будет отображаться в Attribution control всякий раз, когда слой виден.

beforeAdd(<Map> map) this

Необязательный метод. Вызывается при map.addLayer(layer), до добавления слоя на карту, до инициализации событий, без ожидания, пока карта будет в работоспособном состоянии. Используйте только для предварительной инициализации.

Методы всплывающей подсказки

Все слои разделяют набор методов, удобных для привязки всплывающих подсказок к ним.
var layer = L.Polygon(latlngs).bindPopup('Hi There!').addTo(map);
layer.openPopup();
layer.closePopup();

Всплывающие подсказки также будут автоматически открываться при нажатии на слой и закрываться при удалении слоя с карты или открытии другой всплывающей подсказки.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающую подсказку к слою с переданной content и настраивает необходимые обработчики событий. Если передана Function, она получит слой в качестве первого аргумента и должна вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающую подсказку, ранее привязанную с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанную всплывающую подсказку в указанной latlng или в стандартном якоре всплывающей подсказки, если latlng не передана.

closePopup() this

Закрывает привязанную к этому слою всплывающую подсказку, если она открыта.

togglePopup() this

Открывает или закрывает привязанную к этому слою всплывающую подсказку в зависимости от ее текущего состояния.

isPopupOpen() boolean

Возвращает true, если привязанная к этому слою всплывающая подсказка в данный момент открыта.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое привязанной к этому слою всплывающей подсказки.

getPopup() Popup

Возвращает всплывающую подсказку, привязанную к этому слою.

Методы подсказки

Все слои разделяют набор методов, удобных для привязки подсказок к ним.
var layer = L.Polygon(latlngs).bindTooltip('Hi There!').addTo(map);
layer.openTooltip();
layer.closeTooltip();
Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданной content и настраивает необходимые обработчики событий. Если передана Function, она получит слой в качестве первого аргумента и должна вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или в стандартном якоре подсказки, если latlng не передана.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от ее текущего состояния.

isTooltipOpen() boolean

Возвращает true, если привязанная к этому слою подсказка в данный момент открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое привязанной к этому слою подсказки.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определенному типу события объекта. Вы можете необязательно указать контекст обработчика (объект, к которому будет относиться ключевое слово this). Вы также можете передать несколько типов, разделенных пробелом (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, она удалит всех обработчиков данного события из объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий в объекте.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Инициирует событие указанного типа. Вы можете необязательно указать объект данных — первый аргумент функции-обработчика будет содержать его свойства. Событие может быть необязательно распространено к родительским событиям.

listens(<String> type) Boolean

Возвращает true, если для определенного типа события есть какие-либо присоединенные обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительское событие - Evented, который получит распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родительское событие, чтобы оно перестало получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Интерактивный слой

Некоторые Layer могут быть интерактивными — при взаимодействии пользователя с таким слоем можно обрабатывать события мыши, такие как click и mouseover. Используйте методы обработки событий для обработки этих событий.

Параметры

Параметр Тип Значение по умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет действовать как часть базовой карты.
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен к панели наложения карты. Переопределение этого параметра приведет к размещению слоя на другой панели по умолчанию.
attribution String null Строка, отображаемая в элементе управления атрибутами, описывающая данные слоя, например, "© Mapbox".

События

События мыши

Событие Данные Описание
click MouseEvent Fired when the user clicks (or taps) the layer.
dblclick MouseEvent Fired when the user double-clicks (or double-taps) the layer.
mousedown MouseEvent Fired when the user pushes the mouse button on the layer.
mouseover MouseEvent Fired when the mouse enters the layer.
mouseout MouseEvent Fired when the mouse leaves the layer.
contextmenu MouseEvent Fired when the user right-clicks on the layer, prevents default browser context menu from showing if there are listeners on this event. Also fired on mobile when the user holds a single touch for a second (also called long press).
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
addTo(<Map> map) this

Добавляет слой на указанную карту

remove() this

Удаляет слой с карты, на которой он в данный момент активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий именованный слой на карте. Если name опущено, возвращает слой для данного слоя.

getAttribution() String

Используется attribution control, возвращает опцию атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающее окно к слою с переданным content и настраивает необходимые обработчики событий. Если передается Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее привязанное с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанное всплывающее окно в указанной latlng или по умолчанию, если latlng не передан.

closePopup() this

Закрывает всплывающее окно, привязанное к этому слою, если оно открыто.

togglePopup() this

Открывает или закрывает всплывающее окно, привязанное к этому слою, в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающее окно, привязанное к этому слою, в настоящее время открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, привязанного к этому слою.

getPopup() Popup

Возвращает всплывающее окно, привязанное к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передается Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или по умолчанию, если latlng не передан.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от ее текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определенному типу события объекта. Вы можете необязательно указать контекст обработчика (объект, к которому будет относиться this). Также можно передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, удаляются все обработчики данного события в объекте. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий в объекте.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Необязательно можно передать объект данных — свойства которого будут первым аргументом функции-обработчика. Событие необязательно может распространяться на родительские события.

listens(<String> type) Boolean

Возвращает true, если для определенного типа события есть какие-либо привязанные обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительский обработчик событий — Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родительский обработчик событий, чтобы он перестал получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Контроль

L.Control — базовый класс для реализации элементов управления картой. Обрабатывает позиционирование. Все остальные элементы управления расширяются от этого класса.

Параметры

Параметр Тип Значение по умолчанию Описание
position String 'topright' Позиция элемента управления (один из углов карты). Возможные значения — 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

Классы, расширяющие L.Control, унаследуют следующие методы:
Метод Возвращает Описание
getPosition() string

Возвращает положение элемента управления.

setPosition(<string> position) this

Устанавливает положение элемента управления.

getContainer() HTMLElement

Возвращает HTMLElement, содержащий элемент управления.

addTo(<Map> map) this

Добавляет элемент управления к заданной карте.

remove() this

Удаляет элемент управления с карты, на которой он в настоящее время активен.

Методы расширения

Каждый элемент управления должен быть расширен от L.Control и (пере-)реализовывать следующие методы.
Метод Возвращает Описание
onAdd(<Map> map) HTMLElement

Должен вернуть контейнерный DOM-элемент для элемента управления и добавить обработчики событий на соответствующие события карты. Вызывается при control.addTo(map).

onRemove(<Map> map)

Необязательный метод. Должен содержать весь код очистки, который удаляет обработчики событий, добавленные ранее в onAdd. Вызывается при control.remove().

Обработчик

Абстрактный класс для обработчиков взаимодействия с картой

Методы

Метод Возвращает Описание
enable() this

Активирует обработчик

disable() this

Деактивирует обработчик

enabled() Boolean

Возвращает true, если обработчик активирован

Методы расширения

Классы, унаследованные от Handler, должны реализовать два следующих метода:
Метод Возвращает Описание
addHooks()

Вызывается при активации обработчика, должен добавить обработчики событий.

removeHooks()

Вызывается при деактивации обработчика, должен удалить обработчики событий, добавленные ранее.

Проекция

Объект с методами для проекции географических координат мира на плоскую поверхность (и обратно). См. Проекция карты.

Методы

Метод Возвращает Описание
project(<LatLng> latlng) Point

Проецирует географические координаты в 2D-точку. Принимает только фактические экземпляры L.LatLng, а не массивы.

unproject(<Point> point) LatLng

Обратное преобразование project. Проецирует 2D-точку в географическое местоположение. Принимает только фактические экземпляры L.Point, а не массивы.

Свойства

Свойство Тип Описание
bounds Bounds The bounds (specified in CRS units) where the projection is valid

Определенные проекции

Leaflet поставляется с набором уже определённых проекций:
Проекция Описание
L.Projection.LonLat Прямоугольная или проекция Ламберта — самая простая проекция, преимущественно используемая специалистами по ГИС. Непосредственно отображает x как долготу и y как широту. Также подходит для плоских миров, например, для карт игр. Используется CRS EPSG:3395 и Simple.
L.Projection.Mercator Эллиптическая проекция Меркатора — сложнее, чем сферическая проекция Меркатора. Учитывает, что Земля — это геоид, а не идеальная сфера. Используется CRS EPSG:3395.
L.Projection.SphericalMercator Сферическая проекция Меркатора — самая распространённая проекция для онлайн-карт, используемая практически всеми бесплатными и коммерческими поставщиками плиток. Предполагает, что Земля — это сфера. Используется CRS EPSG:3857.

CRS

Абстрактный класс, определяющий системы координат для проекции географических точек в пиксельные (экранные) координаты и обратно (и в координаты в других единицах для сервисов WMS). См. систему пространственной справки. Leaflet определяет наиболее распространённые CRS по умолчанию. Если вы хотите использовать CRS, не определённые по умолчанию, ознакомьтесь с плагином Proj4Leaflet.

Методы

Метод Возвращает Описание
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. Принимает только фактические экземпляры L.LatLng, а не массивы.

wrapLatLngBounds(<LatLngBounds> bounds) LatLngBounds

Возвращает LatLngBounds с таким же размером, как и заданный, гарантируя, что его центр находится внутри границ CRS. Принимает только фактические экземпляры L.LatLngBounds, а не массивы.

Свойства

Свойство Тип Описание
code String Standard code name of the CRS passed into WMS services (e.g. 'EPSG:3857')
wrapLng Number[] An array of two numbers defining whether the longitude (horizontal) coordinate axis wraps around a given range and how. Defaults to [-180, 180] in most geographical CRSs. If undefined, the longitude axis does not wrap around.
wrapLat Number[] Like wrapLng, but for the latitude (vertical) axis.
infinite Boolean If true, the coordinate space will be unbounded (infinite in both axes)

Определённые CRS

CRS Описание
L.CRS.EPSG3395 Редко используется некоторыми коммерческими поставщиками плиток. Использует эллиптическую проекцию Меркатора.
L.CRS.EPSG3857 Наиболее распространённый CRS для онлайн-карт, используемый практически всеми бесплатными и коммерческими поставщиками плиток. Использует сферическую проекцию Меркатора. Установлен по умолчанию в опции crs карты.
L.CRS.EPSG4326 Распространённый CRS среди энтузиастов ГИС. Использует простую прямоугольную проекцию. Leaflet 1.0.x соответствует схеме координат TMS для EPSG:4326, что является изменением поведения по сравнению с 0.7.x. Если вы используете TileLayer с этим CRS, убедитесь, что существуют две плитки 256x256 пикселей, покрывающие всю Землю на уровне масштаба ноль, и что начало координат плитки находится в (-180,+90) или (-180,-90) для TileLayer с опцией tms установленной.
L.CRS.Earth Служит основой для CRS, которые являются глобальными, таким образом, что они охватывают Землю. Может использоваться только в качестве основы для других CRS и не может использоваться напрямую, так как у него нет code, projection или transformation. distance() возвращает метры.
L.CRS.Simple Простой CRS, который отображает долготу и широту непосредственно в x и y. Может использоваться для карт плоских поверхностей (например, карт игр). Обратите внимание, что ось y всё ещё должна быть инвертирована (от нижней к верхней части). distance() возвращает просто евклидово расстояние.

Рендерер

Базовый класс для реализации рендереров векторов (SVG, Canvas). Обрабатывает контейнер DOM рендера, его границы и анимацию масштабирования. Renderer работает как неявная группа слоёв для всех Path — сам рендер может быть добавлен или удалён на карту. Все пути используют рендер, который может быть неявным (карта определит тип рендера и использует его автоматически) или явным (используя опцию renderer пути). Не используйте этот класс напрямую, используйте SVG и Canvas вместо него.

Параметры

Параметр Тип По умолчанию Описание
padding Number 0.1 Насколько нужно расширить область обрезки вокруг представления карты (относительно её размера), например, 0,1 будет 10% размера представления карты в каждом направлении.
Параметр Тип По умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на слой перекрытий карты. Переопределение этого параметра поместит слой по умолчанию на другой слой.
attribution String null Строка, отображаемая в элементе управления подписью, описывающая данные слоя, например, "© Mapbox".

События

Событие Данные Описание
update Event Fired when the renderer updates its bounds, center and zoom, for example when its map has moved
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращаемое значение Описание
addTo(<Map> map) this

Добавляет слой на заданную карту

remove() this

Удаляет слой с карты, на которой он сейчас активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий именованный слой на карте. Если name опущено, возвращает слой для этого слоя.

getAttribution() String

Используется attribution control, возвращает параметр подпись.

Метод Возвращаемое значение Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающее окно к слою с переданным content и настраивает необходимые обработчики событий. Если передается Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее привязанное с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанное всплывающее окно в указанном latlng или по умолчанию, если latlng не передан.

closePopup() this

Закрывает привязанное всплывающее окно к этому слою, если оно открыто.

togglePopup() this

Открывает или закрывает привязанное всплывающее окно к этому слою в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если привязанное всплывающее окно к этому слою в настоящее время открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, привязанного к этому слою.

getPopup() Popup

Возвращает всплывающее окно, привязанное к этому слою.

Метод Возвращаемое значение Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передается Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанном latlng или по умолчанию, если latlng не передан.

closeTooltip() this

Закрывает привязанную подсказку к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает привязанную подсказку к этому слою в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если привязанная подсказка к этому слою в настоящее время открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-слушатель (fn) к определённому типу события объекта. Вы можете указать контекст слушателя (объект, к которому будет относиться ключевое слово this). Также можно указать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/слушатель, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-слушатель. Если функция не указана, будут удалены все слушатели этого конкретного события от объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off, чтобы удалить слушателя.

off(<Object> eventMap) this

Удаляет набор пар тип/слушатель.

off() this

Удаляет всех слушателей всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно передать объект данных — первый аргумент функции-слушателя будет содержать его свойства. Событие может необязательно быть распространено на родительские элементы.

listens(<String> type) Boolean

Возвращает true, если для определённого типа события есть какие-либо присоединённые слушатели.

once(…) this

Ведёт себя как on(…), за исключением того, что слушатель будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительский элемент события - Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительский элемент события, так что он перестанет получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Объекты событий

Всякий раз, когда класс, наследующий от Evented, вызывает событие, функция-слушатель будет вызвана с аргументом события, который является простым объектом, содержащим информацию о событии. Например:

map.on('click', function(ev) {
    alert(ev.latlng); // ev is an event object (MouseEvent in this case)
});

Доступная информация зависит от типа события:

Событие

Базовый объект события. Все остальные объекты событий также содержат эти свойства.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

KeyboardEvent

Свойство Тип Описание
originalEvent DOMEvent The original DOM KeyboardEvent that triggered this Leaflet event.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

MouseEvent

Свойство Тип Описание
latlng LatLng The geographical point where the mouse event occured.
layerPoint Point Pixel coordinates of the point where the mouse event occured relative to the map layer.
containerPoint Point Pixel coordinates of the point where the mouse event occured relative to the map сontainer.
originalEvent DOMEvent The original DOM MouseEvent or DOM TouchEvent that triggered this Leaflet event.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

LocationEvent

Свойство Тип Описание
latlng LatLng Detected geographical location of the user.
bounds LatLngBounds Geographical bounds of the area user is located in (with respect to the accuracy of location).
accuracy Number Accuracy of location in meters.
altitude Number Height of the position above the WGS84 ellipsoid in meters.
altitudeAccuracy Number Accuracy of altitude in meters.
heading Number The direction of travel in degrees counting clockwise from true North.
speed Number Current velocity in meters per second.
timestamp Number The time when the position was acquired.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

ErrorEvent

Свойство Тип Описание
message String Error message.
code Number Error code (if applicable).
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

LayerEvent

Свойство Тип Описание
layer Layer The layer that was added or removed.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

LayersControlEvent

Свойство Тип Описание
layer Layer The layer that was added or removed.
name String The name of the layer that was added or removed.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

TileEvent

Свойство Тип Описание
tile HTMLElement The tile element (image).
coords Point Point object with the tile's x, y, and z (zoom level) coordinates.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

TileErrorEvent

Свойство Тип Описание
tile HTMLElement The tile element (image).
coords Point Point object with the tile's x, y, and z (zoom level) coordinates.
error * Error passed to the tile's done() callback.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

ResizeEvent

Свойство Тип Описание
oldSize Point The old size before resize event.
newSize Point The new size after the resize event.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

GeoJSONEvent

Свойство Тип Описание
layer Layer The layer for the GeoJSON feature that is being added to the map.
properties Object GeoJSON properties of the feature.
geometryType String GeoJSON geometry type of the feature.
id String GeoJSON ID of the feature (if present).
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

PopupEvent

Свойство Тип Описание
popup Popup The popup that was opened or closed.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

TooltipEvent

Свойство Тип Описание
tooltip Tooltip The tooltip that was opened or closed.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

DragEndEvent

Свойство Тип Описание
distance Number The distance in pixels the draggable element was moved by.
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

ZoomAnimEvent

Свойство Тип Описание
center LatLng The current center of the map
zoom Number The current zoom level of the map
noUpdate Boolean Whether layers should update their contents due to this event
Свойство Тип Описание
type String The event type (e.g. 'click').
target Object The object that fired the event.

DivOverlay

Базовая модель для L.Popup и L.Tooltip. Унаследуйте от неё для создания пользовательских всплывающих окон, например, в плагинах.

Параметры

Параметр Тип Значение по умолчанию Описание
offset Point Point(0, 7) Смещение позиции всплывающего окна. Полезно для управления якорем всплывающего окна при открытии его на некоторых наложениях.
className String '' Пользовательское имя класса CSS для присвоения всплывающему окну.
pane String 'popupPane' Map pane, куда будет добавлено всплывающее окно.
Параметр Тип Значение по умолчанию Описание
attribution String null Строка, отображаемая в блоке атрибуции, описывающая данные слоя, например, "© Mapbox".

События

Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращаемое значение Описание
addTo(<Map> map) this

Добавляет слой на указанную карту

remove() this

Удаляет слой с карты, на которой он в данный момент активен.

removeFrom(<Map> map) this

Удаляет слой с указанной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий именованный слой на карте. Если name опущен, возвращает слой для данного слоя.

getAttribution() String

Используется модулем attribution control, возвращает опцию атрибуции.

Метод Возвращаемое значение Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Связывает всплывающее окно со слоем с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее связанное с bindPopup.

openPopup(<LatLng> latlng?) this

Открывает связанное всплывающее окно в указанной latlng или по умолчанию, если не передан latlng.

closePopup() this

Закрывает связанное всплывающее окно, если оно открыто.

togglePopup() this

Открывает или закрывает связанное всплывающее окно в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если связанное всплывающее окно в данный момент открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое связанного всплывающего окна.

getPopup() Popup

Возвращает связанное всплывающее окно.

Метод Возвращаемое значение Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Связывает всплывающую подсказку со слоем с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет всплывающую подсказку, ранее связанную с bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает связанную всплывающую подсказку в указанной latlng или по умолчанию, если не передан latlng.

closeTooltip() this

Закрывает связанную всплывающую подсказку, если она открыта.

toggleTooltip() this

Открывает или закрывает связанную всплывающую подсказку в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если связанная всплывающая подсказка в данный момент открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое связанной всплывающей подсказки.

getTooltip() Tooltip

Возвращает связанную всплывающую подсказку.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-слушатель (fn) к определённому типу события объекта. Вы можете указать контекст слушателя (объект, к которому будет относиться ключевое слово this). Также можно передать несколько типов через пробел (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар "тип/слушатель", например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-слушатель. Если функция не указана, будут удалены все слушатели этого конкретного события из объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off для удаления слушателя.

off(<Object> eventMap) this

Удаляет набор пар "тип/слушатель".

off() this

Удаляет всех слушателей всех событий объекта.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Вы можете необязательно предоставить объект данных — первый аргумент функции-слушателя будет содержать его свойства. Событие необязательно может быть распространено на родительские элементы.

listens(<String> type) Boolean

Возвращает true, если для конкретного типа события есть какие-либо присоединённые слушатели.

once(…) this

Ведёт себя как on(…), за исключением того, что слушатель будет срабатывать только один раз, а затем удаляться.

addEventParent(<Evented> obj) this

Добавляет родительский элемент события — Evented, который будет получать распространяемые события.

removeEventParent(<Evented> obj) this

Удаляет родительский элемент события, так что он перестанет получать распространяемые события.

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Глобальные переключатели

Глобальные переключатели созданы для редких случаев и, как правило, заставляют Leaflet не обнаруживать определённую функцию браузера, даже если она есть. Вам нужно установить переключатель как глобальную переменную в значение true перед включением Leaflet на странице, например так:

<script>L_NO_TOUCH = true;</script>
<script src="leaflet.js"></script>
Переключатель Описание
L_NO_TOUCH Заставляет Leaflet не использовать события touch, даже если они обнаружены.
L_DISABLE_3D Заставляет Leaflet не использовать ускоренные CSS 3D преобразования для позиционирования (что может привести к ошибкам в некоторых редких средах), даже если они поддерживаются.

noConflict

Этот метод восстанавливает глобальную переменную L до её исходного значения до включения Leaflet и возвращает фактическое пространство имён Leaflet, чтобы вы могли поместить его в другое место, например так:

<script src='libs/l.js'>
<!-- L points to some other library -->
<script src='leaflet.js'>
<!-- you include Leaflet, it replaces the L variable to Leaflet namespace -->
<script>
var Leaflet = L.noConflict();
// now L points to that other library again, and you can use Leaflet.Map etc.
</script>

версия

Константа, представляющая используемую версию Leaflet.

L.version; // contains "1.0.0" (or whatever version is currently in use)

© 2010–2018 Vladimir Agafonkin
© 2010–2011, CloudMade
Maps © OpenStreetMap contributors.
https://leafletjs.com/reference-1.0.3.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API