Spec-Zone.ru › Leaflet 1.5

Ссылка на API Leaflet

Карта

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

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

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

Создание

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

Параметры

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

События

События слоя

Event Data Description
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

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

Event Data Description
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).

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

Event Data Description
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.

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

Event Data Description
tooltipopen TooltipEvent Fired when a tooltip is opened in the map.
tooltipclose TooltipEvent Fired when a tooltip in the map is closed.

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

Event Data Description
locationerror ErrorEvent Fired when geolocation (using the locate method) failed.
locationfound LocationEvent Fired when geolocation (using the locate method) went successfully.

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

Event Data Description
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 that produces a character value while the map is focused.
keydown KeyboardEvent Fired when the user presses a key from the keyboard while the map is focused. Unlike the keypress event, the keydown event is fired for keys that produce a character value and for keys that do not produce a character value.
keyup KeyboardEvent Fired when the user releases 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).

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

Event Data Description
zoomanim ZoomAnimEvent Fired at least once per zoom animation. For continuous zoom, like pinch zooming, fired once per frame during zoom.

Методы

Method Returns Description
getRenderer(<Path> layer) Renderer

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

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

Method Returns Description
addControl(<Control> control) this

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

removeControl(<Control> control) this

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

addLayer(<Layer> layer) this

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

removeLayer(<Layer> layer) this

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

hasLayer(<Layer> layer) Boolean

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

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

Перебирает слои карты, при необходимости указывая контекст функции итератора.

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

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

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

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

closePopup(<Popup> popup?) this

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

openTooltip(<Tooltip> tooltip) this

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

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

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

closeTooltip(<Tooltip> tooltip?) this

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

fitWorld(<fitBounds options> options?) this

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

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

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

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

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

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

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

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

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

setMaxBounds(<Bounds> bounds) this

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

setMinZoom(<Number> zoom) this

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

setMaxZoom(<Number> zoom) this

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

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

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

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

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

invalidateSize(<Zoom/pan options> options) this

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

invalidateSize(<Boolean> animate) this

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

stop() this

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

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

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

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

stopLocate() this

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

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

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

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

remove() this

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

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

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

getPane(<String|HTMLElement> pane) HTMLElement

Возвращает область карты, учитывая ее имя или ее HTML-элемент (ее идентификатор).

getPanes() Object

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

getContainer() HTMLElement

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

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

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

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

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

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

getZoom() Number

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

getBounds() LatLngBounds

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

getMinZoom() Number

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

getMaxZoom() Number

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

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

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

getSize() Point

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

getPixelBounds() Bounds

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

getPixelOrigin() Point

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

getPixelWorldBounds(<Number> zoom?) Bounds

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

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

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

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

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

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

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

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

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

Обратное project.

layerPointToLatLng(<Point> point) LatLng

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

latLngToLayerPoint(<LatLng> latlng) Point

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

wrapLatLng(<LatLng> latlng) LatLng

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

wrapLatLngBounds(<LatLngBounds> bounds) LatLngBounds

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

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

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

containerPointToLayerPoint(<Point> point) Point

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

layerPointToContainerPoint(<Point> point) Point

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

containerPointToLatLng(<Point> point) LatLng

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

latLngToContainerPoint(<LatLng> latlng) Point

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

mouseEventToContainerPoint(<MouseEvent> ev) Point

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

mouseEventToLayerPoint(<MouseEvent> ev) Point

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

mouseEventToLatLng(<MouseEvent> ev) LatLng

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

Свойства

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

Свойство Тип Описание
zoomControl Control.Zoom The default zoom control (only available if the zoomControl option was true when creating the map).

Обработчики

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

Области карты

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

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

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

Параметры масштабирования

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

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

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

Параметры масштабирования/панорамирования

Опция Тип Значение по умолчанию Описание
animate Boolean Если не указано, анимация масштабирования будет происходить, если начало масштабирования находится внутри текущего вида. Если true, карта попытается анимировать масштабирование, независимо от того, где находится начало масштабирования. Установка false заставит её всегда полностью сбрасывать вид без анимации.
Опция Тип Значение по умолчанию Описание
duration Number 0.25 Длительность анимированного панорамирования в секундах.
easeLinearity Number 0.25 Коэффициент кривизны сглаживания анимации панорамирования (третий параметр кривой Безье Cubic Bezier curve). 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 Коэффициент кривизны сглаживания анимации панорамирования (третий параметр кривой Безье Cubic Bezier curve). 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, заданный географической точкой и необязательно объектом параметров.

Параметры

END_OF_DOCUMENT_MARKER
Option Type Default Description
icon Icon * Экземпляр значка для отображения маркера. См. документацию по значкам для получения подробной информации о настройке значка маркера. Если не указано, используется общий экземпляр L.Icon.Default.
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-index, используемое для функции riseOnHover.
pane String 'markerPane' Map pane куда будет добавлен значок маркеров. Map pane куда будет добавлена тень маркеров.
bubblingMouseEvents Boolean false Когда true, событие мыши на этом маркере вызовет то же событие на карте (если не используется L.DomEvent.stopPropagation).

Параметры перетаскиваемого маркера

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

События

В дополнение к общим методам слоя, таким как addTo() и remove(), и методам всплывающих окон, таким как bindPopup(), вы также можете использовать следующие методы:
Event Data Description
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.

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

Event Data Description
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).
Event Data Description
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.
mouseup MouseEvent Fired when the user releases the mouse button pushed 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).
Event Data Description
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Event Data Description
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.

Методы

Method Returns Description
toGeoJSON(<Number> precision?) Object

precision — это количество десятичных знаков для координат. Значение по умолчанию — 6 знаков. Возвращает представление маркера GeoJSON (как объект GeoJSON Point).

getLatLng() LatLng

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

setLatLng(<LatLng> latlng) this

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

setZIndexOffset(<Number> offset) this

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

getIcon() Icon

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

setIcon(<Icon> icon) this

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

setOpacity(<Number> opacity) this

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

Method Returns Description
addTo(<Map|LayerGroup> map) this

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

Method Returns Description
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

Свойства

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

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

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

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

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

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

marker.bindPopup(popupContent).openPopup();

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

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

Создание

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

Параметры

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

События

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

Методы

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

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

setLatLng(<LatLng> latlng) this

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

getContent() String|HTMLElement

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

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

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

getElement() String|HTMLElement

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

update() null

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

isOpen() Boolean

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

bringToFront() this

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

bringToBack() this

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

openOn(<Map> map) this

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

Подсказка

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

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

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

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

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

Создание

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

Параметры

Option Type Default Description
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 Прозрачность контейнера всплывающей подсказки.
Option Type Default Description
className String '' Настраиваемое имя класса CSS для присваивания всплывающему окну.
Option Type Default Description
attribution String null Строка, которая будет показана в элементе управления атрибуцией, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридическим обязательством перед правообладателями и поставщиками тайлов.

События

Event Data Description
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Event Data Description
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.

Методы

Method Returns Description
addTo(<Map|LayerGroup> map) this

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

Method Returns Description
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

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

Method Returns Description
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

Используется для загрузки и отображения слоёв плиток на карте. Обратите внимание, что большинство серверов тайлов требуют указания атрибуции, которую можно установить в разделе Layer. Расширяет GridLayer.

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

L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png?{foo}', {foo: 'bar', attribution: 'Map data &copy; <a href="https://www.openstreetmap.org/">OpenStreetMap</a> contributors, <a href="https://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>'}).addTo(map);

Шаблон URL

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

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

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

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

Создание

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

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

Параметры

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

События

Событие Данные Описание
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). Если URL не меняется, слой не будет перерисован, если параметр noRedraw не установлен в false.

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

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

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

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

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

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

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

bringToBack() this

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

getContainer() HTMLElement

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

setOpacity(<Number> opacity) this

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

setZIndex(<Number> zIndex) this

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

isLoading() Boolean

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

redraw() this

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

getTileSize() Point

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

TileLayer.WMS

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

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

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

Создание

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

Опции

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

События

Event Data Description
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.
Event Data Description
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Event Data Description
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.

Методы

Method Returns Description
setParams(<Object> params, <Boolean> noRedraw?) this

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

Method Returns Description
setUrl(<String> url, <Boolean> noRedraw?) this

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

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

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

Method Returns Description
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().

Method Returns Description
addTo(<Map|LayerGroup> map) this

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

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

События

Событие Данные Описание
load Event Fired when the ImageOverlay layer has loaded its image
error Event Fired when the ImageOverlay layer fails to load its image
END_OF_DOCUMENT_MARKER
Событие Данные Описание
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.
mouseup MouseEvent Fired when the user releases the mouse button pushed 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

setZIndex(<Number> value) this

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

getBounds() LatLngBounds

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

getElement() HTMLElement

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

VideoOverlay

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

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

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

Создание

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

Параметры

Параметр Тип Значение по умолчанию Описание
autoplay Boolean true Запускается ли видео автоматически при загрузке.
loop Boolean true Будет ли видео циклически повторяться с начала при воспроизведении.
keepAspectRatio Boolean true Сохраняет ли видео соотношение сторон после проецирования. Актуально для поддерживаемых браузеров. Совместимость браузеров - https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit
Параметр Тип Значение по умолчанию Описание
opacity Number 1.0 Прозрачность видео-оверлея.
alt String '' Текст для атрибута alt изображения (полезно для доступности).
interactive Boolean false Если true, видео-оверлей будет генерировать события мыши при клике или наведении курсора.
crossOrigin Boolean|String false Будет ли атрибут crossOrigin добавлен к изображению. Если указана строка, атрибут crossOrigin изображения будет установлен в указанную строку. Это необходимо, если вы хотите получить доступ к пиксельным данным изображения. См. CORS Settings для допустимых значений строк.
errorOverlayUrl String '' URL изображения оверлея, которое будет показано вместо оверлея, загрузка которого не удалась.
zIndex Number 1 Явное значение zIndex слоя оверлея.
className String '' Пользовательское имя класса для присваивания изображению. Пустое по умолчанию.
Параметр Тип Значение по умолчанию Описание
bubblingMouseEvents Boolean true Когда true, событие мыши на этом слое вызовет то же событие на карте (если не используется L.DomEvent.stopPropagation).
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен в оверлейную панель карты. Переопределение этого параметра приведёт к тому, что слой будет помещён на другую панель по умолчанию.
attribution String null Строка, которая будет показана в элементе управления атрибуцией, например, «© OpenStreetMap contributors». Она описывает данные слоя и часто является юридическим обязательством перед правообладателями и поставщиками тайлов.

События

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

Методы

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

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

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

Задает непрозрачность оверлея.

bringToFront() this

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

bringToBack() this

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

setUrl(<String> url) this

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

setBounds(<LatLngBounds> bounds) this

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

setZIndex(<Number> value) this

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

getBounds() LatLngBounds

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

SVGOverlay

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

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

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

Создание

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

Параметры

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

События

Event Data Description
load Event Fired when the ImageOverlay layer has loaded its image
error Event Fired when the ImageOverlay layer fails to load its image
Event Data Description
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.
mouseup MouseEvent Fired when the user releases the mouse button pushed 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).
Event Data Description
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Event Data Description
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.

Методы

Method Returns Description
getElement() SVGElement

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

Method Returns Description
setOpacity(<Number> opacity) this

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

bringToFront() this

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

bringToBack() this

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

setUrl(<String> url) this

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

setBounds(<LatLngBounds> bounds) this

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

setZIndex(<Number> value) this

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

getBounds() LatLngBounds

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

Method Returns Description
addTo(<Map|LayerGroup> map) this

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

Method Returns Description
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

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

Параметры

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

События

Событие Данные Описание
click MouseEvent 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.
mouseup MouseEvent Fired when the user releases the mouse button pushed 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).
END_OF_DOCUMENT_MARKER
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

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

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

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

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

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

Polyline

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

События

Event Data Description
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.
mouseup MouseEvent Fired when the user releases the mouse button pushed 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).
Event Data Description
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Event Data Description
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.

Методы

Method Returns Description
toGeoJSON(<Number> precision?) Object

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

getLatLngs() LatLng[]

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

setLatLngs(<LatLng[]> latlngs) this

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

isEmpty() Boolean

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

closestLayerPoint(<Point> p) Point

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

getCenter() LatLng

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

getBounds() LatLngBounds

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

addLatLng(<LatLng> latlng) this

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

Method Returns Description
redraw() this

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

Отправляет слой на задний план всех слоев пути.

Method Returns Description
addTo(<Map|LayerGroup> map) this

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

Можно также передать массив массивов координат, причём первый массив представляет внешнюю форму, а остальные массивы представляют отверстия во внешней форме:

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

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

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

Создание

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

Опции

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

События

Событие Данные Описание
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.
mouseup MouseEvent Fired when the user releases the mouse button pushed 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(<Number> precision?) Object

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

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

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

setLatLngs(<LatLng[]> latlngs) this

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

isEmpty() Boolean

Возвращает true если полилиния не имеет LatLngs.

closestLayerPoint(<Point> p) Point

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

getCenter() LatLng

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

getBounds() LatLngBounds

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

addLatLng(<LatLng> latlng) this

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

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

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

Отправляет слой на задний план всех слоев пути.

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

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

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

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

События

Event Data Description
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.
mouseup MouseEvent Fired when the user releases the mouse button pushed 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).
Event Data Description
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Event Data Description
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.

Методы

Method Returns Description
setBounds(<LatLngBounds> latLngBounds) this

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

Method Returns Description
toGeoJSON(<Number> precision?) Object

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

Method Returns Description
getLatLngs() LatLng[]

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

setLatLngs(<LatLng[]> latlngs) this

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

isEmpty() Boolean

Возвращает true, если полилиния не имеет LatLngs.

closestLayerPoint(<Point> p) Point

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

getCenter() LatLng

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

getBounds() LatLngBounds

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

addLatLng(<LatLng> latlng) this

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

Method Returns Description
redraw() this

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

Отправляет слой на задний план всех слоев пути.

Method Returns Description
addTo(<Map|LayerGroup> map) this

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

События

Event Data Description
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.
mouseup MouseEvent Fired when the user releases the mouse button pushed 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).
Event Data Description
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Event Data Description
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.

Методы

Method Returns Description
setRadius(<Number> radius) this

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

getRadius() Number

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

getBounds() LatLngBounds

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

Method Returns Description
toGeoJSON(<Number> precision?) Object

precision — это количество десятичных знаков для координат. Значение по умолчанию — 6 знаков. Возвращает GeoJSON представление маркера круга (как GeoJSON Point Feature).

setLatLng(<LatLng> latLng) this

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

getLatLng() LatLng

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

Method Returns Description
redraw() this

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

Отправляет слой на самый низ всех слоев пути.

Method Returns Description
addTo(<Map|LayerGroup> map) this

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

События

Event Data Description
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.
mouseup MouseEvent Fired when the user releases the mouse button pushed 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).
Event Data Description
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Event Data Description
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.

Методы

Method Returns Description
toGeoJSON(<Number> precision?) Object

precision - это количество десятичных знаков для координат. Значение по умолчанию - 6 знаков. Возвращает GeoJSON представление метки круга (как GeoJSON Point Feature).

setLatLng(<LatLng> latLng) this

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

getLatLng() LatLng

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

setRadius(<Number> radius) this

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

getRadius() Number

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

Method Returns Description
redraw() this

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

setStyle(<Path options> style) this

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

bringToFront() this

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

bringToBack() this

Отправляет слой на самый низ всех слоев пути.

Method Returns Description
addTo(<Map|LayerGroup> map) this

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

SVG

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% от представления карты в каждом направлении
tolerance Number 0 На сколько расширить допуск клика вокруг пути/объекта на карте
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на оверлейную панель карты. Переопределение этого параметра приведёт к размещению слоя на другой панели по умолчанию.
attribution String null Строка, которая будет отображаться в элементе управления атрибуцией, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридическим обязательством перед правообладателями и поставщиками тайлов.

События

Событие Данные Описание
update Event Fired when the renderer updates its bounds, center and zoom, for example when its map has moved
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

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

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

remove() this

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

removeFrom(<Map> map) this

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

getPane(<String> name?) HTMLElement

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

getAttribution() String

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

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

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

unbindPopup() this

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

openPopup(<LatLng> latlng?) this

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

closePopup() this

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

togglePopup() this

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

isPopupOpen() boolean

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

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

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

getPopup() Popup

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

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

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

unbindTooltip() this

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

openTooltip(<LatLng> latlng?) this

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

closeTooltip() this

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

toggleTooltip() this

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

isTooltipOpen() boolean

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

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

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

getTooltip() Tooltip

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

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

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

on(<Object> eventMap) this

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

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

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

off(<Object> eventMap) this

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

off() this

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

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

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

listens(<String> type) Boolean

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

once(…) this

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

addEventParent(<Evented> obj) this

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

removeEventParent(<Evented> obj) this

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

addEventListener(…) this

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

removeEventListener(…) this

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

clearAllEventListeners(…) this

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

addOneTimeEventListener(…) this

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

fireEvent(…) this

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

hasEventListeners(…) Boolean

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

Функции

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

Canvas

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

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

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

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

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

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

Создание

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

Параметры

Параметр Тип По умолчанию Описание
padding Number 0.1 Насколько расширить область вырезания вокруг области просмотра карты (относительно её размера), например, 0,1 будет 10% от области просмотра карты в каждом направлении
tolerance Number 0 Насколько расширить допуск клика вокруг пути/объекта на карте
Параметр Тип По умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен в панель наложений карты. Переопределение этого параметра приведет к тому, что слой будет помещен на другую панель по умолчанию.
attribution String null Строка, которая будет показана в элементе управления атрибуцией, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридическим обязательством перед правообладателями и поставщиками тайлов.

События

Событие Данные Описание
update Event Fired when the renderer updates its bounds, center and zoom, for example when its map has moved
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на заданную карту или группу слоев.

remove() this

Удаляет слой с карты, на которой он в данный момент активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement представляющий именованную панель на карте. Если name опущено, возвращает панель для этого слоя.

getAttribution() String

Используется 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

Генерирует событие указанного типа. Вы можете optionally предоставить объект данных — первый аргумент функции-слушателя будет содержать её свойства. Событие может быть optionally распространено на родительские события.

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(…)

LayerGroup

Используется для группировки нескольких слоев и обработки их как одного. Если вы добавите его на карту, любые слои, добавленные или удалённые из группы, также будут добавлены/удалены на карте. Расширяет Layer.

Пример использования

L.layerGroup([marker1, marker2])
    .addLayer(polyline)
    .addTo(map);

Создание

Фабрика Описание
L.layerGroup(<Layer[]> layers?, <Object> options?) Создает группу слоев, optionally задавая начальный набор слоев и объект options.

Параметры

Параметр Тип По умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на панель overlay карты. Переопределение этого параметра приведёт к тому, что слой будет размещён на другой панели по умолчанию.
attribution String null Строка, которая будет показана в элементе управления атрибуцией, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридическим обязательством перед правообладателями и поставщиками тайлов.

События

Событие Данные Описание
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(<Number> precision?) Object

precision — это количество десятичных знаков для координат. Значение по умолчанию — 6 знаков. Возвращает GeoJSON представление группы слоев (как GeoJSON FeatureCollection, GeometryCollection, или MultiPoint).

addLayer(<Layer> layer) this

Добавляет заданный слой в группу.

removeLayer(<Layer> layer) this

Удаляет заданный слой из группы.

removeLayer(<Number> id) this

Удаляет слой с заданным внутренним ID из группы.

hasLayer(<Layer> layer) Boolean

Возвращает true, если заданный слой в данный момент добавлен в группу.

hasLayer(<Number> id) Boolean

Возвращает true, если заданный внутренний ID в данный момент добавлен в группу.

clearLayers() this

Удаляет все слои из группы.

invoke(<String> methodName, …) this

Вызывает methodName для каждого слоя, содержащегося в этой группе, передавая любые дополнительные параметры. Не оказывает никакого эффекта, если содержащиеся слои не реализуют methodName.

eachLayer(<Function> fn, <Object> context?) this

Итерирует по слоям группы, при желании указывая контекст функции итератора.

group.eachLayer(function (layer) {
    layer.bindPopup('Hello');
});
getLayer(<Number> id) Layer

Возвращает слой с заданным внутренним ID.

getLayers() Layer[]

Возвращает массив всех слоев, добавленных в группу.

setZIndex(<Number> zIndex) this

Вызывает setZIndex для каждого слоя, содержащегося в этой группе, передавая z-index.

getLayerId(<Layer> layer) Number

Возвращает внутренний ID слоя

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на заданную карту или группу слоев.

remove() this

Удаляет слой с карты, на которой он активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий именованную панель на карте. Если name опущен, возвращает панель для этого слоя.

getAttribution() String

Используется attribution control, возвращает опцию атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающее окно к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее привязанное с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанное всплывающее окно в указанном latlng или в точке привязки всплывающего окна по умолчанию, если latlng не передан.

closePopup() this

Закрывает всплывающее окно, привязанное к этому слою, если оно открыто.

togglePopup() this

Открывает или закрывает всплывающее окно, привязанное к этому слою, в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающее окно, привязанное к этому слою, в данный момент открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, привязанного к этому слою.

getPopup() Popup

Возвращает всплывающее окно, привязанное к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанном latlng или в точке привязки подсказки по умолчанию, если latlng не передан.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в данный момент открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию прослушивателя (fn) к определённому типу события объекта. Можно указать контекст прослушивателя (объект, на который будет указывать ключевое слово this). Можно также передать несколько типов, разделённых пробелами (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/прослушиватель, например {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию прослушивателя. Если функция не указана, будут удалены все прослушиватели этого события из объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off для удаления прослушивателя.

off(<Object> eventMap) this

Удаляет набор пар тип/прослушиватель.

off() this

Удаляет все прослушиватели всех событий объекта. Это включает неявно присоединённые события.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Можно указать объект данных — первый аргумент функции прослушивателя будет содержать его свойства. Событие может быть необязательно распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если к определённому типу события прикреплены какие-либо прослушиватели.

once(…) this

Ведёт себя как on(…), за исключением того, что прослушиватель будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительское событие — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительское событие, поэтому оно перестанет получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

FeatureGroup

Расширенная LayerGroup, которая упрощает выполнение одних и тех же действий со всеми её слоями:

  • bindPopup связывает всплывающую подсказку со всеми слоями одновременно (аналогично с bindTooltip)
  • События распространяются на FeatureGroup, поэтому, если у группы есть обработчик событий, он будет обрабатывать события из любого из слоёв. Это включает в себя события мыши и пользовательские события.
  • Имеет события layeradd и layerremove

Пример использования

L.featureGroup([marker1, marker2, polyline])
    .bindPopup('Hello world!')
    .on('click', function() { alert('Clicked on a member of the group!'); })
    .addTo(map);

Создание

Фабрика Описание
L.featureGroup(<Layer[]> layers) Создать группу объектов, при желании, задав начальный набор слоёв.

Опции

Опция Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен в overlay pane карты. Переопределение этой опции приведёт к тому, что слой будет размещён на другом pane по умолчанию.
attribution String null Строка, которая будет показана в элементе управления атрибуцией, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридическим обязательством перед правообладателями и поставщиками тайлов.

События

Событие Данные Описание
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(<Number> precision?) Object

precision — это количество десятичных знаков для координат. Значение по умолчанию — 6 знаков. Возвращает представление группы слоёв в формате GeoJSON (как GeoJSON FeatureCollection, GeometryCollection, или MultiPoint).

addLayer(<Layer> layer) this

Добавляет заданный слой в группу.

removeLayer(<Layer> layer) this

Удаляет заданный слой из группы.

removeLayer(<Number> id) this

Удаляет слой с заданным внутренним ID из группы.

hasLayer(<Layer> layer) Boolean

Возвращает true, если заданный слой в данный момент добавлен в группу.

hasLayer(<Number> id) Boolean

Возвращает true, если заданный внутренний ID в данный момент добавлен в группу.

clearLayers() this

Удаляет все слои из группы.

invoke(<String> methodName, …) this

Вызывает methodName для каждого слоя, содержащегося в этой группе, передавая любые дополнительные параметры. Не оказывает никакого эффекта, если содержащиеся слои не реализуют methodName.

eachLayer(<Function> fn, <Object> context?) this

Перебирает слои группы, при желании указывая контекст функции итератора.

group.eachLayer(function (layer) {
    layer.bindPopup('Hello');
});
getLayer(<Number> id) Layer

Возвращает слой с заданным внутренним ID.

getLayers() Layer[]

Возвращает массив всех слоёв, добавленных в группу.

setZIndex(<Number> zIndex) this

Вызывает setZIndex для каждого слоя, содержащегося в этой группе, передавая z-index.

getLayerId(<Layer> layer) Number

Возвращает внутренний ID слоя

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на заданную карту или группу слоёв.

remove() this

Удаляет слой с карты, на которой он в данный момент активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий именованный pane на карте. Если name пропущен, возвращает pane для этого слоя.

getAttribution() String

Используется attribution control, возвращает опцию атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Связывает всплывающую подсказку со слоем с помощью переданных content и устанавливает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающую подсказку, ранее связанную с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает связанную всплывающую подсказку в указанном latlng или в якоре всплывающей подсказки по умолчанию, если latlng не передан.

closePopup() this

Закрывает всплывающую подсказку, связанную с этим слоем, если она открыта.

togglePopup() this

Открывает или закрывает всплывающую подсказку, связанную с этим слоем, в зависимости от её текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающая подсказка, связанная с этим слоем, в данный момент открыта.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающей подсказки, связанной с этим слоем.

getPopup() Popup

Возвращает всплывающую подсказку, связанную с этим слоем.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Связывает подсказку со слоем с помощью переданных content и устанавливает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее связанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает связанную подсказку в указанном latlng или в якоре подсказки по умолчанию, если latlng не передан.

closeTooltip() this

Закрывает подсказку, связанную с этим слоем, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, связанную с этим слоем, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, связанная с этим слоем, в данный момент открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, связанной с этим слоем.

getTooltip() Tooltip

Возвращает подсказку, связанную с этим слоем.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию прослушивателя (fn) к определенному типу события объекта. Необязательно можно указать контекст прослушивателя (объект, на который будет указывать ключевое слово this). Вы также можете передать несколько типов, разделенных пробелами (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/прослушиватель, например {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию прослушивателя. Если функция не указана, будут удалены все прослушиватели этого конкретного события из объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off для удаления прослушивателя.

off(<Object> eventMap) this

Удаляет набор пар тип/прослушиватель.

off() this

Удаляет все прослушиватели всех событий объекта. Это включает неявно присоединенные события.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Необязательно можно предоставить объект данных — первый аргумент функции прослушивателя будет содержать его свойства. Событие может быть необязательно распространено на родительские события.

listens(<String> type) Boolean

Возвращает true если к определенному типу события прикреплены какие-либо прослушиватели.

once(…) this

Ведет себя как on(…), за исключением того, что прослушиватель будет срабатывать только один раз, а затем удаляться.

addEventParent(<Evented> obj) this

Добавляет родительское событие — Evented, которое будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительское событие, поэтому оно перестанет получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

GeoJSON

Представляет объект GeoJSON или массив объектов GeoJSON. Позволяет анализировать данные GeoJSON и отображать их на карте. Расширяет FeatureGroup.

Пример использования

L.geoJSON(data, {
    style: function (feature) {
        return {color: feature.properties.color};
    }
}).bindPopup(function (layer) {
    return layer.feature.properties.description;
}).addTo(map);

Создание

Фабрика Описание
L.geoJSON(<Object> geojson?, <GeoJSON options> options?) Создает слой GeoJSON. Необязательно принимает объект в формате GeoJSON для отображения на карте (вы можете добавить его позже с помощью метода addData) и объект options.

Параметры

Параметр Тип Значение по умолчанию Описание
pointToLayer Function * Функция Function, определяющая, как точки GeoJSON порождают слои Leaflet. Она вызывается внутренне при добавлении данных, передавая функцию точки GeoJSON и ее LatLng. Значение по умолчанию — порождать стандартный Marker:
function(geoJsonPoint, latlng) {
    return L.marker(latlng);
}
style Function * Функция Function, определяющая Path options для стилизации линий и полигонов GeoJSON, вызываемая внутренне при добавлении данных. Значение по умолчанию — не переопределять никакие значения по умолчанию:
function (geoJsonFeature) {
    return {}
}
onEachFeature Function * Функция Function, которая будет вызываться один раз для каждого созданного Feature, после того как он был создан и стилизован. Полезно для добавления событий и всплывающих окон к объектам. Значение по умолчанию — ничего не делать с вновь созданными слоями:
function (feature, layer) {}
filter Function * Функция Function, которая будет использоваться для принятия решения о включении объекта или нет. Значение по умолчанию — включить все объекты:
function (geoJsonFeature) {
    return true;
}

Примечание: динамическое изменение параметра filter будет влиять только на вновь добавленные данные. Он не переоценит уже включенные объекты.

coordsToLatLng Function * Функция Function, которая будет использоваться для преобразования координат GeoJSON в LatLng. Значение по умолчанию — статический метод coordsToLatLng.
Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен в оверлейную панель карты. Переопределение этого параметра приведет к размещению слоя на другой панели по умолчанию.
attribution String null Строка, которая будет показана в элементе управления атрибуцией, например, «© OpenStreetMap contributors». Она описывает данные слоя и часто является юридическим обязательством по отношению к правообладателям и поставщикам тайлов.

События

Событие Данные Описание
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(<Number> precision?) Object

precision — это количество десятичных знаков для координат. Значение по умолчанию — 6 знаков. Возвращает представление группы слоёв GeoJSON (как GeoJSON FeatureCollection, GeometryCollection, или MultiPoint).

addLayer(<Layer> layer) this

Добавляет заданный слой в группу.

removeLayer(<Layer> layer) this

Удаляет заданный слой из группы.

removeLayer(<Number> id) this

Удаляет слой с заданным внутренним ID из группы.

hasLayer(<Layer> layer) Boolean

Возвращает true если заданный слой в данный момент добавлен в группу.

hasLayer(<Number> id) Boolean

Возвращает true если заданный внутренний ID в данный момент добавлен в группу.

clearLayers() this

Удаляет все слои из группы.

invoke(<String> methodName, …) this

Вызывает methodName для каждого слоя, содержащегося в этой группе, передавая любые дополнительные параметры. Не оказывает никакого эффекта, если содержащиеся слои не реализуют methodName.

eachLayer(<Function> fn, <Object> context?) this

Итерирует по слоям группы, при желании указывая контекст функции итератора.

group.eachLayer(function (layer) {
    layer.bindPopup('Hello');
});
getLayer(<Number> id) Layer

Возвращает слой с заданным внутренним ID.

getLayers() Layer[]

Возвращает массив всех слоёв, добавленных в группу.

setZIndex(<Number> zIndex) this

Вызывает setZIndex для каждого слоя, содержащегося в этой группе, передавая z-index.

getLayerId(<Layer> layer) Number

Возвращает внутренний ID для слоя

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на заданную карту или группу слоёв.

remove() this

Удаляет слой с карты, на которой он в данный момент активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий именованную панель на карте. Если name опущено, возвращает панель для этого слоя.

getAttribution() String

Используется attribution control, возвращает опцию attribution.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающее окно к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее привязанное с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанное всплывающее окно в указанном latlng или в стандартной точке привязки всплывающего окна, если latlng не передан.

closePopup() this

Закрывает всплывающее окно, привязанное к этому слою, если оно открыто.

togglePopup() this

Открывает или закрывает всплывающее окно, привязанное к этому слою, в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающее окно, привязанное к этому слою, в данный момент открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, привязанного к этому слою.

getPopup() Popup

Возвращает всплывающее окно, привязанное к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и настраивает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанном latlng или в стандартной точке привязки подсказки, если latlng не передан.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в данный момент открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию прослушивателя (fn) к определённому типу события объекта. Можно указать контекст прослушивателя (объект, на который будет указывать ключевое слово this). Можно также передать несколько типов, разделённых пробелами (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/прослушиватель, например {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию прослушивателя. Если функция не указана, будут удалены все прослушиватели этого конкретного события из объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off для удаления прослушивателя.

off(<Object> eventMap) this

Удаляет набор пар тип/прослушиватель.

off() this

Удаляет все прослушиватели всех событий объекта. Это включает неявно прикреплённые события.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Можно указать объект данных — первый аргумент функции прослушивателя будет содержать его свойства. Событие может быть распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если у определённого типа события есть какие-либо прикреплённые к нему прослушиватели.

once(…) this

Ведёт себя как on(…), за исключением того, что прослушиватель будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительское событие — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительское событие, поэтому оно перестанет получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Функции

Существует несколько статических функций, которые можно вызывать без создания экземпляра L.GeoJSON:
Функция Возвращает Описание
geometryToLayer(<Object> featureData, <GeoJSON options> options?) Layer Создает Layer из заданного объекта GeoJSON. Может использовать пользовательские функции pointToLayer и/или coordsToLatLng, если они предоставлены в качестве параметров.
coordsToLatLng(<Array> coords) LatLng Создает объект LatLng из массива из 2 чисел (долгота, широта) или 3 чисел (долгота, широта, высота), используемых в GeoJSON для точек.
coordsToLatLngs(<Array> coords, <Number> levelsDeep?, <Function> coordsToLatLng?) Array Создает многомерный массив LatLng из массива координат GeoJSON. levelsDeep указывает уровень вложенности (0 - для массива точек, 1 - для массива массивов точек и т.д., по умолчанию 0). Может использовать пользовательскую функцию coordsToLatLng.
latLngToCoords(<LatLng> latlng, <Number> precision?) Array Обратное coordsToLatLng
latLngsToCoords(<Array> latlngs, <Number> levelsDeep?, <Boolean> closed?) Array Обратное coordsToLatLngs closed определяет, следует ли добавлять первую точку в конец массива для замыкания объекта, используется только когда levelsDeep равно 0. По умолчанию - false.
asFeature(<Object> geojson) Object Нормализует геометрии/объекты GeoJSON в объекты GeoJSON.

GridLayer

Универсальный класс для обработки плиточной сетки HTML-элементов. Это базовый класс для всех слоев плиток и заменяет TileLayer.Canvas. GridLayer может быть расширен для создания плиточной сетки HTML-элементов, таких как <canvas>, <img> или <div>. GridLayer будет обрабатывать создание и анимацию этих DOM-элементов за вас.

Пример использования

Синхронное использование

Для создания пользовательского слоя, расширьте GridLayer и реализуйте метод createTile(), которому будет передан объект Point с координатами x, y и z (уровень масштабирования) для отрисовки вашей плитки.

var CanvasLayer = L.GridLayer.extend({
    createTile: function(coords){
        // create a <canvas> element for drawing
        var tile = L.DomUtil.create('canvas', 'leaflet-tile');
        // setup tile width and height according to the options
        var size = this.getTileSize();
        tile.width = size.x;
        tile.height = size.y;
        // get a canvas context and draw something on it using coords.x, coords.y and coords.z
        var ctx = tile.getContext('2d');
        // return the tile so it can be rendered on screen
        return tile;
    }
});

Асинхронное использование

Создание плиток также может быть асинхронным, это полезно при использовании сторонней библиотеки отрисовки. После завершения отрисовки плитки она может быть передана в обратный вызов done().

var CanvasLayer = L.GridLayer.extend({
    createTile: function(coords, done){
        var error;
        // create a <canvas> element for drawing
        var tile = L.DomUtil.create('canvas', 'leaflet-tile');
        // setup tile width and height according to the options
        var size = this.getTileSize();
        tile.width = size.x;
        tile.height = size.y;
        // draw something asynchronously and pass the tile to the done() callback
        setTimeout(function() {
            done(error, tile);
        }, 1000);
        return tile;
    }
});

Создание

Фабрика Описание
L.gridLayer(<GridLayer options> options?) Создает новый экземпляр GridLayer с заданными параметрами.

Параметры

Параметр Тип По умолчанию Описание
tileSize Number|Point 256 Ширина и высота плиток в сетке. Используйте число, если ширина и высота равны, или L.point(width, height) в противном случае.
opacity Number 1.0 Прозрачность плиток. Может использоваться в функции createTile().
updateWhenIdle Boolean (depends) Загружать новые плитки только по завершении панорамирования. true по умолчанию на мобильных браузерах, чтобы избежать слишком большого количества запросов и сохранить плавную навигацию. false в противном случае, чтобы отображать новые плитки во время панорамирования, так как легко выйти за пределы параметра keepBuffer в настольных браузерах.
updateWhenZooming Boolean true По умолчанию, плавная анимация масштабирования (во время сенсорного масштабирования или flyTo()) будет обновлять слои сетки на каждом целочисленном уровне масштабирования. Установка этого параметра на false будет обновлять слой сетки только по завершении плавной анимации.
updateInterval Number 200 Плитки не будут обновляться чаще, чем один раз каждые updateInterval миллисекунд при панорамировании.
zIndex Number 1 Явное значение zIndex для слоя плиток.
bounds LatLngBounds undefined Если установлено, плитки будут загружаться только внутри заданных LatLngBounds.
minZoom Number 0 Минимальный уровень масштабирования, до которого будет отображаться этот слой (включительно).
maxZoom Number undefined Максимальный уровень масштабирования, до которого будет отображаться этот слой (включительно).
maxNativeZoom Number undefined Максимальный номер масштабирования, доступный в источнике плиток. Если он указан, плитки на всех уровнях масштабирования выше, чем maxNativeZoom, будут загружаться с уровня maxNativeZoom и автоматически масштабироваться.
minNativeZoom Number undefined Минимальный номер масштабирования, доступный в источнике плиток. Если он указан, плитки на всех уровнях масштабирования ниже, чем minNativeZoom, будут загружаться с уровня minNativeZoom и автоматически масштабироваться.
noWrap Boolean false Оборачивается ли слой вокруг антимеридиана. Если true, GridLayer будет отображаться только один раз на низких уровнях масштабирования. Не оказывает влияния, когда СК карты не охватывает всю окружность. Может использоваться в сочетании с bounds для предотвращения запроса плиток за пределами ограничений СК.
pane String 'tilePane' Map pane куда будет добавлен слой сетки.
className String '' Пользовательское имя класса для присвоения слою плиток. Пустое по умолчанию.
keepBuffer Number 2 При панорамировании карты сохраняйте столько строк и столбцов плиток, прежде чем выгружать их.
Параметр Тип По умолчанию Описание
attribution String null Строка, которая будет показана в элементе управления атрибуцией, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридическим обязательством по отношению к правообладателям и поставщикам плиток.

События

Событие Данные Описание
loading Event Fired when the grid layer starts loading tiles.
tileunload TileEvent Fired when a tile is removed (e.g. when a tile goes off the screen).
tileloadstart TileEvent Fired when a tile is requested and starts loading.
tileerror TileErrorEvent Fired when there is an error loading a tile.
tileload TileEvent Fired when a tile loads.
load Event Fired when the grid layer loaded all visible tiles.
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
bringToFront() this

Перемещает слой плиток наверх всех слоев плиток.

bringToBack() this

Перемещает слой плиток на низ всех слоев плиток.

getContainer() HTMLElement

Возвращает HTML-элемент, содержащий плитки для этого слоя.

setOpacity(<Number> opacity) this

Изменяет прозрачность слоя сетки.

setZIndex(<Number> zIndex) this

Изменяет zIndex слоя сетки.

isLoading() Boolean

Возвращает true, если какая-либо плитка в слое сетки не завершила загрузку.

redraw() this

Заставляет слой очистить все плитки и запросить их снова.

getTileSize() Point

Нормализует параметр tileSize в точку. Используется методом createTile().

Расширяющие методы

Слои, расширяющие GridLayer, должны переопределить следующий метод.
Метод Возвращает Описание
createTile(<Object> coords, <Function> done?) HTMLElement

Вызывается только внутренне, должен быть переопределен классами, расширяющими GridLayer. Возвращает HTMLElement соответствующий заданному coords. Если указан обратный вызов done, он должен быть вызван после завершения загрузки и отрисовки фрагмента карты.

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на указанную карту или группу слоев.

remove() this

Удаляет слой с карты, на которой он в данный момент активен.

removeFrom(<Map> map) this

Удаляет слой с указанной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement представляющий именованную панель на карте. Если name пропущен, возвращает панель для этого слоя.

getAttribution() String

Используется attribution control, возвращает опцию атрибуции.

Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающее окно к слою с переданным content и устанавливает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее привязанное с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанное всплывающее окно в указанной latlng или в стандартной точке привязки всплывающего окна, если latlng не передан.

closePopup() this

Закрывает всплывающее окно, привязанное к этому слою, если оно открыто.

togglePopup() this

Открывает или закрывает всплывающее окно, привязанное к этому слою, в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающее окно, привязанное к этому слою, в данный момент открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, привязанного к этому слою.

getPopup() Popup

Возвращает всплывающее окно, привязанное к этому слою.

Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и устанавливает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанной latlng или в стандартной точке привязки подсказки, если latlng не передан.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в данный момент открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-слушатель (fn) к определенному типу события объекта. Необязательно можно указать контекст слушателя (объект, на который будет указывать ключевое слово this). Можно также передать несколько типов, разделенных пробелами (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/слушатель, например {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-слушатель. Если функция не указана, будут удалены все слушатели этого конкретного события из объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off, чтобы удалить слушатель.

off(<Object> eventMap) this

Удаляет набор пар тип/слушатель.

off() this

Удаляет все слушатели всех событий объекта. Это включает в себя неявно прикрепленные события.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Вызывает событие указанного типа. Необязательно можно предоставить объект данных — первый аргумент функции-слушателя будет содержать его свойства. Событие может быть необязательно распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если к определенному типу события прикреплены какие-либо слушатели.

once(…) this

Ведет себя как on(…), за исключением того, что слушатель будет срабатывать только один раз, а затем удаляться.

addEventParent(<Evented> obj) this

Добавляет родительское событие — Evented, который будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительское событие, поэтому оно перестанет получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

LatLng

Представляет географическую точку с определенной широтой и долготой.

Пример использования

var latlng = L.latLng(50.5, 30.5);

Все методы Leaflet, которые принимают объекты LatLng, также принимают их в простой форме массива и простой объектной форме (если не указано иное), поэтому эти строки эквивалентны:

map.panTo([50, 30]);
map.panTo({lon: 30, lat: 50});
map.panTo({lat: 50, lng: 30});
map.panTo(L.latLng(50, 30));

Обратите внимание, что LatLng не наследуется от объекта Class Leaflet, а это значит, что новые классы не могут наследоваться от него, и новые методы не могут быть добавлены к нему с помощью функции include.

Создание

Фабрика Описание
L.latLng(<Number> latitude, <Number> longitude, <Number> altitude?) Создает объект, представляющий географическую точку с заданной широтой и долготой (и необязательно высотой).
L.latLng(<Array> coords) Ожидает массив в форме [Number, Number] или [Number, Number, Number] вместо этого.
L.latLng(<Object> coords) Ожидает простой объект в форме {lat: Number, lng: Number} или {lat: Number, lng: Number, alt: Number} вместо этого.

Методы

Метод Возвращает Описание
equals(<LatLng> otherLatLng, <Number> maxMargin?) Boolean

Возвращает true если заданная точка LatLng находится в том же положении (с небольшой погрешностью). Погрешность можно изменить, установив maxMargin в небольшое число.

toString() String

Возвращает строковое представление точки (для отладки).

distanceTo(<LatLng> otherLatLng) Number

Возвращает расстояние (в метрах) до заданной точки LatLng, вычисленное с использованием Сферического закона косинусов.

wrap() LatLng

Возвращает новый объект LatLng с развернутой долготой, которая всегда находится в диапазоне от -180 до +180 градусов.

toBounds(<Number> sizeInMeters) LatLngBounds

Возвращает новый объект LatLngBounds, в котором каждая граница находится на расстоянии sizeInMeters/2 метров от LatLng.

Свойства

Свойство Тип Описание
lat Number 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] градусов. Обратите внимание, что LatLngBounds не наследуется от объекта Class Leaflet, что означает, что новые классы не могут наследовать от него, и новые методы не могут быть добавлены к нему с помощью функции include.

Создание

Фабрика Описание
L.latLngBounds(<LatLng> corner1, <LatLng> corner2) Создает объект LatLngBounds, определяя два диагонально противоположных угла прямоугольника.
L.latLngBounds(<LatLng[]> latlngs) Создает объект LatLngBounds, определяемый географическими точками, которые он содержит. Очень полезно для масштабирования карты, чтобы она соответствовала определенному набору местоположений с помощью fitBounds.

Методы

Метод Возвращает Описание
extend(<LatLng> latlng) this

Расширяет границы, чтобы включить заданную точку

extend(<LatLngBounds> otherBounds) this

Расширяет границы, чтобы включить заданные границы

pad(<Number> bufferRatio) LatLngBounds

Возвращает границы, созданные путем расширения или сокращения текущих границ на заданный коэффициент в каждом направлении. Например, коэффициент 0,5 расширяет границы на 50% в каждом направлении. Отрицательные значения будут сокращать границы.

getCenter() LatLng

Возвращает центральную точку границ.

getSouthWest() LatLng

Возвращает юго-западную точку границ.

getNorthEast() LatLng

Возвращает северо-восточную точку границ.

getNorthWest() LatLng

Возвращает северо-западную точку границ.

getSouthEast() LatLng

Возвращает юго-восточную точку границ.

getWest() Number

Возвращает западную долготу границ

getSouth() Number

Возвращает южную широту границ

getEast() Number

Возвращает восточную долготу границ

getNorth() Number

Возвращает северную широту границ

contains(<LatLngBounds> otherBounds) Boolean

Возвращает true если прямоугольник содержит заданный.

contains(<LatLng> latlng) Boolean

Возвращает true если прямоугольник содержит заданную точку.

intersects(<LatLngBounds> otherBounds) Boolean

Возвращает true если прямоугольник пересекает заданные границы. Две границы пересекаются, если у них есть хотя бы одна общая точка.

overlaps(<Bounds> otherBounds) Boolean

Возвращает true если прямоугольник перекрывает заданные границы. Два прямоугольника перекрываются, если их пересечение является областью.

toBBoxString() String

Возвращает строку с координатами ограничивающего прямоугольника в формате 'southwest_lng,southwest_lat,northeast_lng,northeast_lat'. Полезно для отправки запросов в веб-сервисы, которые возвращают геоданные.

equals(<LatLngBounds> otherBounds, <Number> maxMargin?) Boolean

Возвращает true если прямоугольник эквивалентен (с небольшой погрешностью) заданным границам. Погрешность можно изменить, установив maxMargin в небольшое число.

isValid() Boolean

Возвращает true если границы правильно инициализированы.

Point

Представляет точку с координатами x и y в пикселях.

Пример использования

var point = L.point(200, 300);

Все методы и параметры Leaflet, которые принимают объекты Point, также принимают их в простом массиве (если не указано иное), поэтому эти строки эквивалентны:

map.panBy([200, 300]);
map.panBy(L.point(200, 300));

Обратите внимание, что Point не наследуется от объекта Class Leaflet, что означает, что новые классы не могут наследовать от него, и новые методы не могут быть добавлены к нему с помощью функции include.

Создание

Фабрика Описание
L.point(<Number> x, <Number> y, <Boolean> round?) Создает объект Point с заданными координатами x и y. Если необязательный параметр round установлен в true, округляет значения x и y.
L.point(<Number[]> coords) Ожидает массив в формате [x, y] вместо этого.
L.point(<Object> coords) Ожидает простой объект в формате {x: Number, y: Number} вместо этого.

Методы

Метод Возвращает Описание
clone() Point

Возвращает копию текущей точки.

add(<Point> otherPoint) Point

Возвращает результат сложения текущей и заданной точек.

subtract(<Point> otherPoint) Point

Возвращает результат вычитания заданной точки из текущей.

divideBy(<Number> num) Point

Возвращает результат деления текущей точки на заданное число.

multiplyBy(<Number> num) Point

Возвращает результат умножения текущей точки на заданное число.

scaleBy(<Point> scale) Point

Умножает каждую координату текущей точки на каждую координату scale. В терминах линейной алгебры, умножает точку на матрицу масштабирования, определенную scale.

unscaleBy(<Point> scale) Point

Обратное scaleBy. Делит каждую координату текущей точки на каждую координату scale.

round() Point

Возвращает копию текущей точки с округленными координатами.

floor() Point

Возвращает копию текущей точки с координатами, округленными вниз.

ceil() Point

Возвращает копию текущей точки с координатами, округленными вверх.

trunc() Point

Возвращает копию текущей точки с усеченными координатами (округленными к нулю).

distanceTo(<Point> otherPoint) Number

Возвращает евклидово расстояние между текущей и заданной точками.

equals(<Point> otherPoint) Boolean

Возвращает true если заданная точка имеет те же координаты.

contains(<Point> otherPoint) Boolean

Возвращает true если обе координаты заданной точки меньше соответствующих координат текущей точки (по абсолютным значениям).

toString() String

Возвращает строковое представление точки для отладки.

Свойства

Свойство Тип Описание
x Number 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]]);

Обратите внимание, что Bounds не наследуется от объекта Class Leaflet, что означает, что новые классы не могут наследовать от него, и новые методы не могут быть добавлены к нему с помощью функции include.

Создание

Фабрика Описание
L.bounds(<Point> corner1, <Point> corner2) Создает объект Bounds из двух пар координат углов.
L.bounds(<Point[]> points) Создает объект Bounds из заданного массива точек.

Методы

Метод Возвращает Описание
extend(<Point> point) this

Расширяет границы, чтобы они содержали заданную точку.

getCenter(<Boolean> round?) Point

Возвращает центральную точку границ.

getBottomLeft() Point

Возвращает нижнюю левую точку границ.

getTopRight() Point

Возвращает верхнюю правую точку границ.

getTopLeft() Point

Возвращает верхнюю левую точку границ (т.е. this.min).

getBottomRight() Point

Возвращает нижнюю правую точку границ (т.е. this.max).

getSize() Point

Возвращает размер заданных границ

contains(<Bounds> otherBounds) Boolean

Возвращает true если прямоугольник содержит заданный.

contains(<Point> point) Boolean

Возвращает true если прямоугольник содержит заданную точку.

intersects(<Bounds> otherBounds) Boolean

Возвращает true если прямоугольник пересекает заданные границы. Две границы пересекаются, если у них есть хотя бы одна общая точка.

overlaps(<Bounds> otherBounds) Boolean

Возвращает true если прямоугольник перекрывает заданные границы. Две границы перекрываются, если их пересечение является областью.

Свойства

Свойство Тип Описание
min Point 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 (абсолютный или относительный к пути вашего скрипта). Используется для устройств с экранами Retina.
iconSize Point null Размер изображения иконки в пикселях.
iconAnchor Point null Координаты «кончика» иконки (относительно ее левого верхнего угла). Иконка будет выровнена так, чтобы эта точка находилась в географическом местоположении маркера. По умолчанию центрируется, если указан размер, также может быть установлен в CSS с отрицательными полями.
popupAnchor Point [0, 0] Координаты точки, из которой будут открываться всплывающие окна, относительно якоря иконки.
tooltipAnchor Point [0, 0] Координаты точки, из которой будут открываться всплывающие подсказки, относительно якоря иконки.
shadowUrl String null URL-адрес изображения тени иконки. Если не указан, изображение тени создаваться не будет.
shadowRetinaUrl String null
shadowSize Point null Размер изображения тени в пикселях.
shadowAnchor Point null Координаты «кончика» тени (относительно ее левого верхнего угла) (такие же, как iconAnchor, если не указано иное).
className String '' Настраиваемое имя класса для присваивания изображениям иконки и тени. По умолчанию пустое.

Методы

Метод Возвращает Описание
createIcon(<HTMLElement> oldIcon?) HTMLElement

Вызывается внутренне, когда иконка должна быть показана, возвращает HTML-элемент <img> , оформленный в соответствии с параметрами.

createShadow(<HTMLElement> oldIcon?) HTMLElement

Как createIcon, но для тени под ним.

Icon.Default

Тривиальный подкласс Icon, представляет собой иконку для использования в Marker, когда иконка не указана. Указывает на изображение синего маркера, распространяемое с выпусками Leaflet. Чтобы настроить иконку по умолчанию, просто измените свойства L.Icon.Default.prototype.options (который представляет собой набор Icon options). Если вы хотите полностью заменить иконку по умолчанию, переопределите L.Marker.prototype.options.icon своей собственной иконкой.
Параметр Тип По умолчанию Описание
imagePath String Icon.Default попытается автоматически определить местоположение изображений синих значков. Если вы размещаете эти изображения нестандартным способом, установите этот параметр, чтобы указать правильный путь.

DivIcon

Представляет собой облегченную иконку для маркеров, которая использует простой элемент <div> вместо изображения. Наследуется от Icon, но игнорирует параметры iconUrl и тени.

Пример использования

var myIcon = L.divIcon({className: 'my-div-icon'});
// you can set .my-div-icon styles in CSS
L.marker([50.505, 30.57], {icon: myIcon}).addTo(map);

По умолчанию он имеет класс CSS 'leaflet-div-icon' и оформлен как маленький белый квадрат с тенью.

Создание

Фабрика Описание
L.divIcon(<DivIcon options> options) Создает экземпляр DivIcon с заданными параметрами.

Параметры

Параметр Тип По умолчанию Описание
html String|HTMLElement '' Настраиваемый HTML-код для размещения внутри элемента div, по умолчанию пустой. В качестве альтернативы, экземпляр HTMLElement.
bgPos Point [0, 0] Необязательное относительное положение фона в пикселях
Вариант Тип Значение по умолчанию Описание
iconUrl String null (обязательно) URL-адрес изображения значка (абсолютный или относительный к пути вашего скрипта).
iconRetinaUrl String null URL-адрес версии изображения значка с разрешением Retina (абсолютный или относительный к пути вашего скрипта). Используется для устройств с экранами Retina.
iconSize Point null Размер изображения значка в пикселях.
iconAnchor Point null Координаты «кончика» значка (относительно его левого верхнего угла). Значок будет выровнен таким образом, чтобы эта точка находилась в географическом местоположении маркера. Выравнивание по центру по умолчанию, если указан размер, также может быть установлено в CSS с помощью отрицательных полей.
popupAnchor Point [0, 0] Координаты точки, из которой будут «открываться» всплывающие окна, относительно якоря значка.
tooltipAnchor Point [0, 0] Координаты точки, из которой будут «открываться» всплывающие подсказки, относительно якоря значка.
shadowUrl String null URL-адрес изображения тени значка. Если не указано, изображение тени создаваться не будет.
shadowRetinaUrl String null
shadowSize Point null Размер изображения тени в пикселях.
shadowAnchor Point null Координаты «кончика» тени (относительно её левого верхнего угла) (такие же, как и у iconAnchor, если не указано).
className String '' Пользовательское имя класса для присвоения изображениям значка и тени. Пустое по умолчанию.

Методы

Метод Возвращает Описание
createIcon(<HTMLElement> oldIcon?) HTMLElement

Вызывается внутренне, когда значок должен быть показан, возвращает HTML-элемент <img> , оформленный в соответствии с параметрами.

createShadow(<HTMLElement> oldIcon?) HTMLElement

Как createIcon, но для тени под ним.

Control.Zoom

Простой элемент управления масштабированием с двумя кнопками (увеличение и уменьшение). По умолчанию он размещается на карте, если вы не установите его zoomControl параметр в false. Расширяет Control.

Создание

Фабрика Описание
L.control.zoom(<Control.Zoom options> options) Создает элемент управления масштабированием

Параметры

Вариант Тип Значение по умолчанию Описание
zoomInText String '+' Текст, установленный на кнопке «увеличить».
zoomInTitle String 'Zoom in' Заголовок, установленный на кнопке «увеличить».
zoomOutText String '&#x2212 Текст, установленный на кнопке «уменьшить».
zoomOutTitle String 'Zoom out' Заголовок, установленный на кнопке «уменьшить».
Вариант Тип Значение по умолчанию Описание
position String 'topright' Положение элемента управления (один из углов карты). Возможные значения: 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

Метод Возвращает Описание
getPosition() string

Возвращает положение элемента управления.

setPosition(<string> position) this

Устанавливает положение элемента управления.

getContainer() HTMLElement

Возвращает HTMLElement, содержащий элемент управления.

addTo(<Map> map) this

Добавляет элемент управления на указанную карту.

remove() this

Удаляет элемент управления с карты, на которой он в данный момент активен.

Control.Attribution

Элемент управления атрибуцией позволяет отображать данные атрибуции в небольшом текстовом поле на карте. Он размещается на карте по умолчанию, если вы не установите его attributionControl параметр в false, и он автоматически извлекает тексты атрибуции из слоев с помощью getAttribution метода. Расширяет Control.

Создание

Фабрика Описание
L.control.attribution(<Control.Attribution options> options) Создает элемент управления атрибуцией.

Параметры

Вариант Тип Значение по умолчанию Описание
prefix String 'Leaflet' HTML-текст, отображаемый перед атрибутами. Передайте false, чтобы отключить.
Вариант Тип Значение по умолчанию Описание
position String 'topright' Положение элемента управления (один из углов карты). Возможные значения: 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

Метод Возвращает Описание
setPrefix(<String> prefix) this

Устанавливает текст перед атрибутами.

addAttribution(<String> text) this

Добавляет текст атрибуции (например, 'Vector data &copy; Mapbox').

removeAttribution(<String> text) this

Удаляет текст атрибуции.

Метод Возвращает Описание
getPosition() string

Возвращает положение элемента управления.

setPosition(<string> position) this

Устанавливает положение элемента управления.

getContainer() HTMLElement

Возвращает HTMLElement, содержащий элемент управления.

addTo(<Map> map) this

Добавляет элемент управления на указанную карту.

remove() this

Удаляет элемент управления с карты, на которой он в данный момент активен.

Control.Layers

Элемент управления слоями предоставляет пользователям возможность переключаться между различными базовыми слоями и включать/выключать оверлеи (см. подробный пример). Расширяет Control.

Пример использования

var baseLayers = {
    "Mapbox": mapbox,
    "OpenStreetMap": osm
};
var overlays = {
    "Marker": marker,
    "Roads": roadsLayer
};
L.control.layers(baseLayers, overlays).addTo(map);

Параметры baseLayers и overlays представляют собой объектные литералы с именами слоев в качестве ключей и объектами Layer в качестве значений:

{
    "<someName1>": layer1,
    "<someName2>": layer2
}

Имена слоев могут содержать HTML, что позволяет добавлять дополнительное форматирование к элементам:

{"<img src='my-layer-icon' /> <span class='my-layer-item'>My Layer</span>": myLayer}

Создание

Фабрика Описание
L.control.layers(<Object> baselayers?, <Object> overlays?, <Control.Layers options> options?) Создает элемент управления атрибуцией с указанными слоями. Базовые слои будут переключаться с помощью переключателей, а оверлеи — с помощью флажков. Обратите внимание, что все базовые слои должны быть переданы в объект базовых слоев, но только один должен быть добавлен на карту во время создания карты.

Параметры

Option Type Default Description
collapsed Boolean true Если true, элемент управления будет свёрнут в значок и развернётся при наведении курсора мыши или касании.
autoZIndex Boolean true Если true, элемент управления будет назначать zIndexes в порядке возрастания всем своим уровням, чтобы порядок сохранялся при включении/выключении.
hideSingleBase Boolean false Если true, базовые уровни в элементе управления будут скрыты, если их только один.
sortLayers Boolean false Сортировать ли уровни. Когда false, уровни сохранят порядок, в котором они были добавлены в элемент управления.
sortFunction Function * Функция сравнения compare function, которая будет использоваться для сортировки уровней, когда sortLayers равно true. Функция получает экземпляры L.Layer и их имена, как в sortFunction(layerA, layerB, nameA, nameB). По умолчанию сортирует уровни в алфавитном порядке по их именам.
Option Type Default Description
position String 'topright' Положение элемента управления (один из углов карты). Возможные значения: 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

Method Returns Description
addBaseLayer(<Layer> layer, <String> name) this

Добавляет базовый слой (элемент переключателя) с заданным именем в элемент управления.

addOverlay(<Layer> layer, <String> name) this

Добавляет наложение (элемент флажка) с заданным именем в элемент управления.

removeLayer(<Layer> layer) this

Удаляет заданный слой из элемента управления.

expand() this

Развернуть контейнер элемента управления, если он свёрнут.

collapse() this

Свернуть контейнер элемента управления, если он развернут.

Method Returns Description
getPosition() string

Возвращает положение элемента управления.

setPosition(<string> position) this

Устанавливает положение элемента управления.

getContainer() HTMLElement

Возвращает HTMLElement, содержащий элемент управления.

addTo(<Map> map) this

Добавляет элемент управления на заданную карту.

remove() this

Удаляет элемент управления с карты, на которой он в данный момент активен.

Control.Scale

Простой элемент управления масштабом, показывающий масштаб текущего центра экрана в метрической (м/км) и имперской (мили/футы) системах. Расширяет Control.

Пример использования

L.control.scale().addTo(map);

Создание

Factory Description
L.control.scale(<Control.Scale options> options?) Создаёт элемент управления масштабом с заданными параметрами.

Параметры

Option Type Default Description
maxWidth Number 100 Максимальная ширина элемента управления в пикселях. Ширина устанавливается динамически, чтобы отображать круглые значения (например, 100, 200, 500).
metric Boolean True Показывать ли метрическую шкалу (м/км).
imperial Boolean True Показывать ли имперскую шкалу (мили/футы).
updateWhenIdle Boolean false Если true, элемент управления обновляется при moveend, в противном случае он всегда обновляется (обновляется при move).
Option Type Default Description
position String 'topright' Положение элемента управления (один из углов карты). Возможные значения: 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

Method Returns Description
getPosition() string

Возвращает положение элемента управления.

setPosition(<string> position) this

Устанавливает положение элемента управления.

getContainer() HTMLElement

Возвращает HTMLElement, содержащий элемент управления.

addTo(<Map> map) this

Добавляет элемент управления на заданную карту.

remove() this

Удаляет элемент управления с карты, на которой он в данный момент активен.

Browser

Пространство имён со статическими свойствами для обнаружения браузера/функций, используемых Leaflet внутри.

Пример использования

if (L.Browser.ielt9) {
  alert('Upgrade your browser, dude!');
}

Свойства

Property Type Description
ie Boolean true for all Internet Explorer versions (not Edge).
ielt9 Boolean true for Internet Explorer versions less than 9.
edge Boolean true for the Edge web browser.
webkit Boolean true for webkit-based browsers like Chrome and Safari (including mobile versions).
android Boolean true for any browser running on an Android platform.
android23 Boolean true for browsers running on Android 2 or Android 3.
androidStock Boolean true for the Android stock browser (i.e. not Chrome)
opera Boolean true for the Opera browser
chrome Boolean true for the Chrome browser.
gecko Boolean true for gecko-based browsers like Firefox.
safari Boolean true for the Safari browser.
opera12 Boolean true for the Opera browser supporting CSS transforms (version 12 or later).
win Boolean true when the browser is running in a Windows platform
ie3d Boolean true for all Internet Explorer versions supporting CSS transforms.
webkit3d Boolean true for webkit-based browsers supporting CSS transforms.
gecko3d Boolean true for gecko-based browsers supporting CSS transforms.
any3d Boolean true for all browsers supporting CSS transforms.
mobile Boolean true for all browsers running in a mobile device.
mobileWebkit Boolean true for all webkit-based browsers in a mobile device.
mobileWebkit3d Boolean true for all webkit-based browsers in a mobile device supporting CSS transforms.
msPointer Boolean true for browsers implementing the Microsoft touch events model (notably IE10).
pointer Boolean true for all browsers supporting pointer events.
touch Boolean true for all browsers supporting touch events. This does not necessarily mean that the browser is running in a computer with a touchscreen, it only means that the browser is capable of understanding touch events.
mobileOpera Boolean true for the Opera browser in a mobile device.
mobileGecko Boolean true for gecko-based browsers running in a mobile device.
retina Boolean true for browsers on a high-resolution "retina" screen or on any screen when browser's display zoom is more than 100%.
canvas Boolean true when the browser supports <canvas>.
svg Boolean true when the browser supports SVG.
vml Boolean true if the browser supports VML.

Util

Различные служебные функции, используемые 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 Возвращает уникальный ID объекта, присваивая ему один, если его нет.
throttle(<Function> fn, <Number> time, <Object> context) Function Возвращает функцию, которая выполняет функцию fn с заданной областью видимости context (так что ключевое слово this ссылается на context внутри кода fn). Функция fn будет вызываться не чаще одного раза за заданное количество time. Аргументы, полученные привязанной функцией, будут любыми аргументами, переданными при привязке функции, а затем любые аргументы, переданные при вызове привязанной функции. Имеет сокращение L.throttle.
wrapNum(<Number> num, <Number[]> range, <Boolean> includeMax?) Number Возвращает число num по модулю range таким образом, чтобы оно находилось в пределах range[0] и range[1]. Возвращаемое значение всегда будет меньше, чем range[1], если только includeMax не установлено в true.
falseFn() Function Возвращает функцию, которая всегда возвращает false.
formatNum(<Number> num, <Number> digits?) Number Возвращает число num, округленное до digits десятичных знаков или до 6 десятичных знаков по умолчанию.
trim(<String> str) String Полифилл совместимости для String.prototype.trim
splitWords(<String> str) String[] Обрезает и разделяет строку по пробелам и возвращает массив частей.
setOptions(<Object> obj, <Object> options) Object Объединяет заданные свойства с options объекта obj, возвращая результирующие параметры. См. Class options. Имеет сокращение L.setOptions.
getParamString(<Object> obj, <String> existingUrl?, <Boolean> uppercase?) String Преобразует объект в строку URL-параметров, например, {a: "foo", b: "bar"} преобразуется в '?a=foo&b=bar'. Если установлен existingUrl, параметры будут добавлены в конце. Если uppercase равно true, имена параметров будут преобразованы в верхний регистр (например, '?A=foo&B=bar')
template(<String> str, <Object> data) String Простая система шаблонизации, принимает строку шаблона формы 'Hello {a}, {b}' и объект данных, например {a: 'foo', b: 'bar'}, возвращает вычисленную строку ('Hello foo, bar'). Вы также можете указать функции вместо строк для значений данных — они будут вычислены, передавая data в качестве аргумента.
isArray(obj) Boolean Полифилл совместимости для Array.isArray
indexOf(<Array> array, <Object> el) Number Полифилл совместимости для Array.prototype.indexOf
requestAnimFrame(<Function> fn, <Object> context?, <Boolean> immediate?) Number Планирует выполнение fn при перерисовке браузера. fn привязывается к context, если задано. Когда immediate установлен, fn вызывается немедленно, если браузер не имеет собственной поддержки для window.requestAnimationFrame, в противном случае он задерживается. Возвращает идентификатор запроса, который можно использовать для отмены запроса.
cancelAnimFrame(<Number> id) undefined Отменяет предыдущий requestAnimFrame. См. также window.cancelAnimationFrame.

Свойства

Свойство Тип Описание
lastId Number Last unique ID used by stamp()
emptyImageUrl String Data URI string containing a base64-encoded empty GIF image. Used as a hack to free memory from unused images on WebKit-powered mobile devices (by setting image src to this string).

Трансформация

Представляет аффинную трансформацию: набор коэффициентов a, b, c, d для преобразования точки вида (x, y) в (a*x + b, c*y + d) и выполнения обратного преобразования. Используется Leaflet в своем коде проекций.

Пример использования

var transformation = L.transformation(2, 5, -1, 10),
    p = L.point(1, 2),
    p2 = transformation.transform(p), //  L.point(7, 8)
    p3 = transformation.untransform(p2); //  L.point(1, 2)

Создание

Фабрика Описание
L.transformation(<Number> a, <Number> b, <Number> c, <Number> d) Создает объект Transformation с заданными коэффициентами.
L.transformation(<Array> coefficients) Ожидает массив коэффициентов вида [a: Number, b: Number, c: Number, d: Number].

Методы

Метод Возвращает Описание
transform(<Point> point, <Number> scale?) Point

Возвращает преобразованную точку, необязательно умноженную на заданный масштаб. Принимает только фактические экземпляры L.Point, а не массивы.

untransform(<Point> point, <Number> scale?) Point

Возвращает обратное преобразование данной точки, необязательно деленное на заданный масштаб. Принимает только фактические экземпляры L.Point, а не массивы.

LineUtil

Различные служебные функции для обработки точек полилиний, используемые Leaflet внутри для повышения скорости работы полилиний.

Функции

Функция Возвращает Описание
simplify(<Point[]> points, <Number> tolerance) Point[] Значительно уменьшает количество точек в полилинии, сохраняя ее форму, и возвращает новый массив упрощенных точек, используя алгоритм Douglas-Peucker. Используется для значительного повышения производительности при обработке/отображении полилиний Leaflet для каждого уровня масштабирования, а также для уменьшения визуального шума. Параметр tolerance влияет на степень упрощения (меньшее значение означает более высокое качество, но медленнее и с большим количеством точек). Также выпущен как отдельная микробиблиотека Simplify.js.
pointToSegmentDistance(<Point> p, <Point> p1, <Point> p2) Number Возвращает расстояние между точкой p и сегментом p1 до p2.
closestPointOnSegment(<Point> p, <Point> p1, <Point> p2) Number Возвращает ближайшую точку от точки p на сегменте p1 до p2.
clipSegment(<Point> a, <Point> b, <Bounds> bounds, <Boolean> useLastCode?, <Boolean> round?) Point[]|Boolean Обрезает сегмент a до b по прямоугольным границам с помощью алгоритма Cohen-Sutherland (непосредственно изменяя точки сегмента!). Используется Leaflet для отображения только тех точек полилинии, которые находятся на экране или рядом, что повышает производительность.
isFlat(<LatLng[]> latlngs) Boolean Возвращает true, если latlngs является плоским массивом, false, если вложенный.

PolyUtil

Различные служебные функции для геометрии полигонов.

Функции

Функция Возвращает Описание
clipPolygon(<Point[]> points, <Bounds> bounds, <Boolean> round?) Point[] Обрезает геометрию полигона, определенную заданными points, по заданным границам (используя алгоритм Sutherland-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 Удаляет ранее добавленную функцию-слушатель. Обратите внимание, что если вы передали настраиваемый контекст в 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(<DOMEvent> ev) this Выполняет stopPropagation и preventDefault одновременно.
getMousePosition(<DOMEvent> ev, <HTMLElement> container?) Point Получает нормализованную позицию мыши из события DOM относительно container (без границы) или относительно всей страницы, если не указано.
getWheelDelta(<DOMEvent> ev) Number Получает нормализованное изменение значения колеса из события DOM мышиного колеса, в вертикальных пикселях прокрутки (отрицательное значение при прокрутке вниз). События от указывающих устройств без точной прокрутки сопоставляются с приблизительным значением в 60 пикселей.
addListener(…) this Псевдоним для L.DomEvent.on
removeListener(…) this Псевдоним для L.DomEvent.off

DomUtil

Вспомогательные функции для работы с деревом DOM, используемые внутренне в Leaflet. Большинство функций, ожидающих или возвращающих HTMLElement, также работают для элементов SVG. Единственное различие заключается в том, что классы относятся к классам CSS в HTML и классам SVG в SVG.

Функции

Функция Возвращает Описание
get(<String|HTMLElement> id) HTMLElement Возвращает элемент по его ID DOM, или возвращает сам элемент, если он был передан напрямую.
getStyle(<HTMLElement> el, <String> styleAttrib) String Возвращает значение для определённого атрибута стиля элемента, включая вычисленные значения или значения, установленные через CSS.
create(<String> tagName, <String> className?, <HTMLElement> container?) HTMLElement Создаёт HTML-элемент с tagName, устанавливает его класс в className, и необязательно добавляет его к элементу container.
remove(<HTMLElement> el) Удаляет el из его родительского элемента
empty(<HTMLElement> el) Удаляет все дочерние элементы el из el
toFront(<HTMLElement> el) Делает el последним дочерним элементом своего родителя, поэтому он отображается перед другими дочерними элементами.
toBack(<HTMLElement> el) Делает el первым дочерним элементом своего родителя, поэтому он отображается за другими дочерними элементами.
hasClass(<HTMLElement> el, <String> name) Boolean Возвращает true, если атрибут class элемента содержит name.
addClass(<HTMLElement> el, <String> name) Добавляет name к атрибуту class элемента.
removeClass(<HTMLElement> el, <String> name) Удаляет name из атрибута class элемента.
setClass(<HTMLElement> el, <String> name) Устанавливает класс элемента.
getClass(<HTMLElement> el) String Возвращает класс элемента.
setOpacity(<HTMLElement> el, <Number> opacity) Устанавливает непрозрачность элемента (включая поддержку старых версий IE). opacity должно быть числом от 0 до 1.
testProp(<String[]> props) String|false Проходит по массиву имён стилей и возвращает первое имя, которое является допустимым именем стиля для элемента. Если такое имя не найдено, возвращает false. Полезно для стилей с префиксами поставщиков, таких как transform.
setTransform(<HTMLElement> el, <Point> offset, <Number> scale?) Сбрасывает 3D CSS-преобразование el, так что оно будет смещено на offset пикселей и при необходимости масштабировано на scale. Не оказывает влияния, если браузер не поддерживает 3D CSS-преобразования.
setPosition(<HTMLElement> el, <Point> position) Устанавливает положение el в координаты, указанные position, используя CSS translate или позиционирование top/left в зависимости от браузера (используется внутренне в Leaflet для позиционирования своих слоёв).
getPosition(<HTMLElement> el) Point Возвращает координаты элемента, ранее расположенного с помощью setPosition.
disableTextSelection() Предотвращает создание пользователем событий DOM selectstart, обычно генерируемых, когда пользователь перетаскивает мышь по странице с текстом. Используется внутренне в Leaflet для переопределения поведения любого взаимодействия «нажми и перетащи» на карте. Влияет на перетаскивание по всему документу.
enableTextSelection() Отменяет действие предыдущего L.DomUtil.disableTextSelection.
disableImageDrag() Как L.DomUtil.disableTextSelection, но для событий DOM dragstart, обычно генерируемых при перетаскивании изображения.
enableImageDrag() Отменяет действие предыдущего L.DomUtil.disableImageDrag.
preventOutline(<HTMLElement> el) Делает outline элемента el невидимым. Используется внутренне в Leaflet, чтобы предотвратить отображение контура фокусируемых элементов, когда пользователь выполняет перетаскивание по ним.
restoreOutline() Отменяет действие предыдущего L.DomUtil.preventOutline.
getSizedParentNode(<HTMLElement> el) HTMLElement Находит ближайший родительский узел, размер (ширина и высота) которого не равен нулю.
getScale(<HTMLElement> el) Object Вычисляет масштаб CSS, применённый в настоящее время к элементу. Возвращает объект с членами x и y как горизонтальный и вертикальный масштабы соответственно, и boundingClientRect как результат getBoundingClientRect().

Свойства

Свойство Тип Описание
TRANSFORM String Vendor-prefixed transform style name (e.g. 'webkitTransform' for WebKit).
TRANSITION String Vendor-prefixed transition style name.
TRANSITION_END String Vendor-prefixed transitionend event name.

PosAnimation

Используется внутренне для анимации панорамирования, используя CSS3 Transitions для современных браузеров и таймер в качестве резервной копии для IE6-9.

Пример использования

var fx = new L.PosAnimation();
fx.run(el, [300, 500], 0.5);

Конструктор

Конструктор Описание
L.PosAnimation() Создаёт объект PosAnimation.

События

Событие Данные Описание
start Event Fired when the animation starts
step Event Fired continuously during the animation.
end Event Fired when the animation ends.

Методы

Метод Возвращает Описание
run(<HTMLElement> el, <Point> newPos, <Number> duration?, <Number> easeLinearity?)

Запускает анимацию заданного элемента в новое положение, при желании устанавливая продолжительность в секундах (0.25 по умолчанию) и коэффициент линейности сглаживания (3-й аргумент кривой Безье, 0.5 по умолчанию).

stop()

Останавливает анимацию (если она в данный момент выполняется).

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию прослушивателя (fn) к определённому типу события объекта. Необязательно можно указать контекст прослушивателя (объект, на который будет указывать ключевое слово this). Также можно передать несколько типов, разделённых пробелами (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/прослушиватель, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию прослушивателя. Если функция не указана, будут удалены все прослушиватели этого события из объекта. Обратите внимание, что если вы передали настраиваемый контекст в on, вы должны передать тот же контекст в off для удаления прослушивателя.

off(<Object> eventMap) this

Удаляет набор пар тип/прослушиватель.

off() this

Удаляет все прослушиватели всех событий объекта. Это включает в себя неявно присоединённые события.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Генерирует событие указанного типа. Необязательно можно указать объект данных — первый аргумент функции прослушивателя будет содержать его свойства. Событие может быть распространено на родительские события.

listens(<String> type) Boolean

Возвращает true если к определённому типу события присоединены какие-либо прослушиватели.

once(…) this

Ведёт себя как on(…), за исключением того, что прослушиватель сработает только один раз, а затем будет удалён.

addEventParent(<Evented> obj) this

Добавляет родительское событие — Evented, которое будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительское событие, чтобы оно перестало получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Перетаскиваемый

Класс для создания перетаскиваемых элементов DOM (включая поддержку сенсорного ввода). Используется внутри для перетаскивания карты и маркеров. Работает только для элементов, которые были позиционированы с помощью L.DomUtil.setPosition.

Пример использования

var draggable = new L.Draggable(elementToDrag);
draggable.enable();

Конструктор

Конструктор Описание
L.Draggable(<HTMLElement> el, <HTMLElement> dragHandle?, <Boolean> preventOutline?, <Draggable options> options?) Создаёт объект Draggable для перемещения el при начале перетаскивания элемента dragHandle (по умолчанию равен el).

Параметры

Параметр Тип По умолчанию Описание
clickTolerance Number 3 Максимальное количество пикселей, на которое пользователь может сместить указатель мыши во время щелчка, чтобы он считался допустимым щелчком (в отличие от перетаскивания мышью).

События

Событие Данные Описание
down Event Fired when a drag is about to start.
dragstart Event Fired when a drag starts
predrag Event Fired continuously during dragging before each corresponding update of the element's position.
drag Event Fired continuously during dragging.
dragend DragEndEvent Fired when the drag ends.

Методы

Метод Возвращает Описание
enable()

Включает возможность перетаскивания

disable()

Отключает возможность перетаскивания

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию прослушивателя (fn) к определённому типу события объекта. Необязательно можно указать контекст прослушивателя (объект, на который будет указывать ключевое слово this). Также можно передать несколько типов, разделённых пробелами (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/прослушиватель, например, {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию прослушивателя. Если функция не указана, будут удалены все прослушиватели этого события из объекта. Обратите внимание, что если вы передали настраиваемый контекст в on, вы должны передать тот же контекст в off для удаления прослушивателя.

off(<Object> eventMap) this

Удаляет набор пар тип/прослушиватель.

off() this

Удаляет все прослушиватели всех событий объекта. Это включает в себя неявно присоединённые события.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Генерирует событие указанного типа. Необязательно можно указать объект данных — первый аргумент функции прослушивателя будет содержать его свойства. Событие может быть распространено на родительские события.

listens(<String> type) Boolean

Возвращает true если к определённому типу события присоединены какие-либо прослушиватели.

once(…) this

Ведёт себя как on(…), за исключением того, что прослушиватель сработает только один раз, а затем будет удалён.

addEventParent(<Evented> obj) this

Добавляет родительское событие — Evented, которое будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительское событие, чтобы оно перестало получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Класс

L.Class обеспечивает возможности ООП в Leaflet и используется для создания почти всех классов Leaflet, описанных здесь. В дополнение к реализации простой классической модели наследования, он вводит несколько специальных свойств для удобной организации кода — 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 в других языках), обращаясь к прототипу родительского класса и используя call или apply JavaScript:

var MyChildClass = MyClass.extend({
    initialize: function () {
        MyClass.prototype.initialize.call(this, "Yo");
    },
    greet: function (name) {
        MyClass.prototype.greet.call(this, 'bro ' + name + '!');
    }
});
var a = new MyChildClass();
a.greet('Jason'); // alerts "Yo, bro Jason!"

Параметры

options — это специальное свойство, которое, в отличие от других объектов, которые вы передаёте в extend, будет объединено с родительским вместо полного переопределения, что делает удобным управление конфигурацией объектов и значениями по умолчанию:

var MyClass = L.Class.extend({
    options: {
        myOption1: 'foo',
        myOption2: 'bar'
    }
});
var MyChildClass = MyClass.extend({
    options: {
        myOption1: 'baz',
        myOption3: 5
    }
});
var a = new MyChildClass();
a.options.myOption1; // 'baz'
a.options.myOption2; // 'bar'
a.options.myOption3; // 5

Есть также L.Util.setOptions, метод для удобного объединения параметров, переданных в конструктор, со значениями по умолчанию, определёнными в классе:

var MyClass = L.Class.extend({
    options: {
        foo: 'bar',
        bla: 5
    },
    initialize: function (options) {
        L.Util.setOptions(this, options);
        ...
    }
});
var a = new MyClass({bla: 10});
a.options; // {foo: 'bar', bla: 10}

Обратите внимание, что объект options допускает любые ключи, а не только параметры, определённые классом и его базовыми классами. Это означает, что вы можете использовать объект options для хранения информации, специфичной для приложения, при условии, что вы избегаете ключей, которые уже используются рассматриваемым классом.

Включает

includes is a special class property that merges all specified objects into the class (such objects are called mixins).

 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 Включает mixin в текущий класс.
mergeOptions(<Object> options) this Объединяет options в значения по умолчанию класса.
addInitHook(<Function> fn) this Добавляет зацепку конструктора в класс.

Evented

Набор методов, общих для классов, работающих с событиями (таких как Map и Marker). В общем, события позволяют выполнять некоторую функцию, когда что-то происходит с объектом (например, пользователь щелкает по карте, заставляя карту генерировать событие 'click').

Пример использования

map.on('click', function(e) {
    alert(e.latlng);
} );

Leaflet работает с обработчиками событий по ссылке, поэтому, если вы хотите добавить обработчик и затем удалить его, определите его как функцию:

function onClick(e) { ... }
map.on('click', onClick);
map.off('click', onClick);

Методы

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определенному типу события объекта. Необязательно можно указать контекст обработчика (объект, на который будет указывать ключевое слово this). Можно также передать несколько типов, разделенных пробелами (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, будут удалены все обработчики этого конкретного события из объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off, чтобы удалить обработчик.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий объекта. Это включает неявно присоединенные события.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Генерирует событие указанного типа. Необязательно можно предоставить объект данных — первый аргумент функции-обработчика будет содержать его свойства. Событие может необязательно распространяться на родительские события.

listens(<String> type) Boolean

Возвращает 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

Набор методов из базового класса Layer, которые используют все слои Leaflet. Наследует все методы, параметры и события от L.Evented.

Пример использования

var layer = L.marker(latlng).addTo(map);
layer.addTo(map);
layer.remove();

Параметры

Параметр Тип Значение по умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на оверлейную панель карты. Переопределение этого параметра приведет к размещению слоя на другой панели по умолчанию.
attribution String null Строка, которая будет показана в элементе управления атрибуцией, например, «© OpenStreetMap contributors». Она описывает данные слоя и часто является юридическим обязательством по отношению к правообладателям и поставщикам тайлов.

События

Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map

События всплывающих окон

Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed

События всплывающих подсказок

Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Классы, расширяющие L.Layer, будут наследовать следующие методы:
Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой на указанную карту или группу слоев.

remove() this

Удаляет слой с карты, на которой он в данный момент активен.

removeFrom(<Map> map) this

Удаляет слой с указанной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement, представляющий именованную панель на карте. Если name пропущен, возвращает панель для этого слоя.

getAttribution() String

Используется attribution control, возвращает параметр атрибуции.

Методы расширения

Каждый слой должен расширяться от L.Layer и (пере-)реализовывать следующие методы.
Метод Возвращает Описание
onAdd(<Map> map) this

Должен содержать код, который создает элементы DOM для слоя, добавляет их в map panes, где они должны находиться, и устанавливает слушатели на соответствующие события карты. Вызывается при map.addLayer(layer).

onRemove(<Map> map) this

Должен содержать весь код очистки, который удаляет элементы слоя из DOM и удаляет слушатели, ранее добавленные в onAdd. Вызывается при map.removeLayer(layer).

getEvents() Object

Этот необязательный метод должен возвращать объект, подобный { viewreset: this._reset }, для addEventListener. Обработчики событий в этом объекте будут автоматически добавляться и удаляться с карты вместе с вашим слоем.

getAttribution() String

Этот необязательный метод должен возвращать строку, содержащую HTML, который будет отображаться на Attribution control, когда слой виден.

beforeAdd(<Map> map) this

Необязательный метод. Вызывается при map.addLayer(layer), до того, как слой будет добавлен на карту, до инициализации событий, без ожидания, пока карта не будет в рабочем состоянии. Используйте только для ранней инициализации.

Методы всплывающих окон

Все слои имеют набор методов, удобных для привязки к ним всплывающих окон.
var layer = L.Polygon(latlngs).bindPopup('Hi There!').addTo(map);
layer.openPopup();
layer.closePopup();

Всплывающие окна также будут автоматически открываться при щелчке по слою и закрываться, когда слой удаляется с карты или открывается другое всплывающее окно.

END_OF_DOCUMENT_MARKER
Метод Возвращает Описание
bindPopup(<String|HTMLElement|Function|Popup> content, <Popup options> options?) this

Привязывает всплывающее окно к слою с переданным content и устанавливает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindPopup() this

Удаляет всплывающее окно, ранее привязанное с помощью bindPopup.

openPopup(<LatLng> latlng?) this

Открывает привязанное всплывающее окно в указанном latlng или в стандартной точке привязки всплывающего окна, если latlng не передан.

closePopup() this

Закрывает всплывающее окно, привязанное к этому слою, если оно открыто.

togglePopup() this

Открывает или закрывает всплывающее окно, привязанное к этому слою, в зависимости от его текущего состояния.

isPopupOpen() boolean

Возвращает true, если всплывающее окно, привязанное к этому слою, в данный момент открыто.

setPopupContent(<String|HTMLElement|Popup> content) this

Устанавливает содержимое всплывающего окна, привязанного к этому слою.

getPopup() Popup

Возвращает всплывающее окно, привязанное к этому слою.

Методы подсказок

Все слои имеют набор методов, удобных для привязки подсказок к ним.
var layer = L.Polygon(latlngs).bindTooltip('Hi There!').addTo(map);
layer.openTooltip();
layer.closeTooltip();
Метод Возвращает Описание
bindTooltip(<String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

Привязывает подсказку к слою с переданным content и устанавливает необходимые обработчики событий. Если передан Function, он получит слой в качестве первого аргумента и должен вернуть String или HTMLElement.

unbindTooltip() this

Удаляет подсказку, ранее привязанную с помощью bindTooltip.

openTooltip(<LatLng> latlng?) this

Открывает привязанную подсказку в указанном latlng или в стандартной точке привязки подсказки, если latlng не передан.

closeTooltip() this

Закрывает подсказку, привязанную к этому слою, если она открыта.

toggleTooltip() this

Открывает или закрывает подсказку, привязанную к этому слою, в зависимости от её текущего состояния.

isTooltipOpen() boolean

Возвращает true, если подсказка, привязанная к этому слою, в данный момент открыта.

setTooltipContent(<String|HTMLElement|Tooltip> content) this

Устанавливает содержимое подсказки, привязанной к этому слою.

getTooltip() Tooltip

Возвращает подсказку, привязанную к этому слою.

Метод Возвращает Описание
on(<String> type, <Function> fn, <Object> context?) this

Добавляет функцию-обработчик (fn) к определённому типу события объекта. Вы можете указать контекст обработчика (объект, на который будет указывать ключевое слово this). Вы также можете передать несколько типов, разделённых пробелами (например, 'click dblclick').

on(<Object> eventMap) this

Добавляет набор пар тип/обработчик, например {click: onClick, mousemove: onMouseMove}

off(<String> type, <Function> fn?, <Object> context?) this

Удаляет ранее добавленную функцию-обработчик. Если функция не указана, будут удалены все обработчики этого события из объекта. Обратите внимание, что если вы передали пользовательский контекст в on, вы должны передать тот же контекст в off для удаления обработчика.

off(<Object> eventMap) this

Удаляет набор пар тип/обработчик.

off() this

Удаляет все обработчики всех событий объекта. Это включает неявно прикреплённые события.

fire(<String> type, <Object> data?, <Boolean> propagate?) this

Генерирует событие указанного типа. Вы можете дополнительно предоставить объект данных — первый аргумент функции-обработчика будет содержать его свойства. Событие может быть опционально распространено на родительские события.

listens(<String> type) Boolean

Возвращает true, если к определённому типу события прикреплены какие-либо обработчики.

once(…) this

Ведёт себя как on(…), за исключением того, что обработчик будет вызван только один раз, а затем удалён.

addEventParent(<Evented> obj) this

Добавляет родительское событие — Evented, которое будет получать распространяемые события

removeEventParent(<Evented> obj) this

Удаляет родительское событие, поэтому оно перестанет получать распространяемые события

addEventListener(…) this

Псевдоним для on(…)

removeEventListener(…) this

Псевдоним для off(…)

clearAllEventListeners(…) this

Псевдоним для off()

addOneTimeEventListener(…) this

Псевдоним для once(…)

fireEvent(…) this

Псевдоним для fire(…)

hasEventListeners(…) Boolean

Псевдоним для listens(…)

Интерактивный слой

Некоторые Layer могут быть сделаны интерактивными — когда пользователь взаимодействует с таким слоем, события мыши, такие как click и mouseover, могут обрабатываться. Используйте методы обработки событий для обработки этих событий.

Параметры

Параметр Тип По умолчанию Описание
interactive Boolean true Если false, слой не будет генерировать события мыши и будет действовать как часть базовой карты.
bubblingMouseEvents Boolean true Когда true, событие мыши на этом слое вызовет то же событие на карте (если не используется L.DomEvent.stopPropagation).
Параметр Тип По умолчанию Описание
pane String 'overlayPane' По умолчанию слой будет добавлен на оверлейную панель карты. Переопределение этого параметра приведёт к размещению слоя на другой панели по умолчанию.
attribution String null Строка, которая будет отображаться в элементе управления атрибуцией, например, «© OpenStreetMap contributors». Она описывает данные слоя и часто является юридическим обязательством перед правообладателями и поставщиками тайлов.

События

События мыши

Событие Данные Описание
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.
mouseup MouseEvent Fired when the user releases the mouse button pushed on the layer.
mouseover MouseEvent Fired when the mouse enters the layer.
mouseout MouseEvent Fired when the mouse leaves the layer.
contextmenu MouseEvent Fired when the user right-clicks on the layer, prevents default browser context menu from showing if there are listeners on this event. Also fired on mobile when the user holds a single touch for a second (also called long press).
Событие Данные Описание
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Событие Данные Описание
popupopen PopupEvent Fired when a popup bound to this layer is opened
popupclose PopupEvent Fired when a popup bound to this layer is closed
Событие Данные Описание
tooltipopen TooltipEvent Fired when a tooltip bound to this layer is opened.
tooltipclose TooltipEvent Fired when a tooltip bound to this layer is closed.

Методы

Метод Возвращает Описание
addTo(<Map|LayerGroup> map) this

Добавляет слой к заданной карте или группе слоев.

remove() this

Удаляет слой с карты, на которой он в данный момент активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement представляющий именованную панель на карте. Если name пропущен, возвращает панель для этого слоя.

getAttribution() String

Используется 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(…)

Управление

L.Control — это базовый класс для реализации элементов управления картой. Обрабатывает позиционирование. Все другие элементы управления наследуются от этого класса.

Параметры

Параметр Тип По умолчанию Описание
position String 'topright' Положение элемента управления (один из углов карты). Возможные значения: 'topleft', 'topright', 'bottomleft' или 'bottomright'

Методы

Классы, расширяющие L.Control, будут наследовать следующие методы:
Метод Возвращает Описание
getPosition() string

Возвращает положение элемента управления.

setPosition(<string> position) this

Устанавливает положение элемента управления.

getContainer() HTMLElement

Возвращает HTMLElement, содержащий элемент управления.

addTo(<Map> map) this

Добавляет элемент управления к заданной карте.

remove() this

Удаляет элемент управления с карты, на которой он в данный момент активен.

Расширяющие методы

Каждый элемент управления должен расширяться от L.Control и (пере-)реализовывать следующие методы.
Метод Возвращает Описание
onAdd(<Map> map) HTMLElement

Должен возвращать элемент DOM-контейнера для элемента управления и добавлять прослушиватели к соответствующим событиям карты. Вызывается при control.addTo(map).

onRemove(<Map> map)

Необязательный метод. Должен содержать весь код очистки, который удаляет прослушиватели, ранее добавленные в onAdd. Вызывается при control.remove().

Обработчик

Абстрактный класс для обработчиков взаимодействия с картой

Методы

Метод Возвращает Описание
enable() this

Включает обработчик

disable() this

Отключает обработчик

enabled() Boolean

Возвращает true если обработчик включен

Расширяющие методы

Классы, наследующие от Handler, должны реализовывать два следующих метода:
Метод Возвращает Описание
addHooks()

Вызывается, когда обработчик включен; должен добавлять обработчики событий.

removeHooks()

Вызывается, когда обработчик отключен; должен удалять ранее добавленные обработчики событий.

Функции

Существует статическая функция, которая может быть вызвана без создания экземпляра L.Handler:

Функция Возвращает Описание
addTo(<Map> map, <String> name) this Добавляет новый обработчик на заданную карту с заданным именем.

Проекция

Объект с методами для проецирования географических координат мира на плоскую поверхность (и обратно). См. Map projection.

Методы

Метод Возвращает Описание
project(<LatLng> latlng) Point

Проецирует географические координаты в 2D точку. Принимает только экземпляры L.LatLng, а не массивы.

unproject(<Point> point) LatLng

Обратное project. Проецирует 2D точку в географическое положение. Принимает только экземпляры L.Point, а не массивы. Обратите внимание, что экземпляры проекции не наследуются от объекта Leaflet's Class и не могут быть созданы. Кроме того, новые классы не могут наследовать от них, и методы не могут быть добавлены к ним с помощью функции include.

Свойства

Свойство Тип Описание
bounds Bounds The bounds (specified in CRS units) where the projection is valid

Определенные проекции

Leaflet поставляется с набором уже определенных проекций:
Проекция Описание
L.Projection.LonLat Равнопромежуточная, или проекция Plate Carree — самая простая проекция, в основном используется любителями ГИС. Непосредственно отображает x как долготу и y как широту. Также подходит для плоских миров, например, игровых карт. Используется системами координат EPSG:4326 и Simple.
L.Projection.Mercator Эллиптическая проекция Меркатора — более сложная, чем сферическая Меркатора. Предполагает, что Земля является эллипсоидом. Используется системой координат EPSG:3395.
L.Projection.SphericalMercator Сферическая проекция Меркатора — наиболее распространенная проекция для онлайн-карт, используемая почти всеми бесплатными и коммерческими поставщиками тайлов. Предполагает, что Земля является сферой. Используется системой координат EPSG:3857.

СК

Методы

Метод Возвращает Описание
latLngToPoint(<LatLng> latlng, <Number> zoom) Point

Проецирует географические координаты в пиксельные координаты для данного масштаба.

pointToLatLng(<Point> point, <Number> zoom) LatLng

Обратное latLngToPoint. Проецирует пиксельные координаты на заданном масштабе в географические координаты.

project(<LatLng> latlng) Point

Проецирует географические координаты в координаты в единицах, принятых для этой СК (например, метры для EPSG:3857, для передачи в службы WMS).

unproject(<Point> point) LatLng

По заданной спроецированной координате возвращает соответствующий LatLng. Обратное project.

scale(<Number> zoom) Number

Возвращает масштаб, используемый при преобразовании спроецированных координат в пиксельные координаты для определенного масштаба. Например, возвращает 256 * 2^zoom для СК на основе Меркатора.

zoom(<Number> scale) Number

Обратное scale(), возвращает уровень масштаба, соответствующий масштабному коэффициенту scale.

getProjectedBounds(<Number> zoom) Bounds

Возвращает границы проекции, масштабированные и преобразованные для заданного zoom.

distance(<LatLng> latlng1, <LatLng> latlng2) Number

Возвращает расстояние между двумя географическими координатами.

wrapLatLng(<LatLng> latlng) LatLng

Возвращает LatLng, где широта и долгота были обернуты в соответствии со свойствами wrapLat и wrapLng СК, если они находятся за пределами границ СК.

wrapLatLngBounds(<LatLngBounds> bounds) LatLngBounds

Возвращает LatLngBounds того же размера, что и заданный, гарантируя, что его центр находится в пределах границ СК. Принимает только экземпляры L.LatLngBounds, а не массивы.

Свойства

Свойство Тип Описание
code String Standard code name of the CRS passed into WMS services (e.g. 'EPSG:3857')
wrapLng Number[] An array of two numbers defining whether the longitude (horizontal) coordinate axis wraps around a given range and how. Defaults to [-180, 180] in most geographical CRSs. If undefined, the longitude axis does not wrap around.
wrapLat Number[] Like wrapLng, but for the latitude (vertical) axis.
infinite Boolean If true, the coordinate space will be unbounded (infinite in both axes)

Определенные СК

СК Описание
L.CRS.EPSG3395 Редко используется некоторыми коммерческими поставщиками тайлов. Использует эллиптическую проекцию Меркатора.
L.CRS.EPSG3857 Наиболее распространенная СК для онлайн-карт, используемая почти всеми бесплатными и коммерческими поставщиками тайлов. Использует сферическую проекцию Меркатора. Устанавливается по умолчанию в параметре crs карты.
L.CRS.EPSG4326 Распространенная СК среди любителей ГИС. Использует простую равнопромежуточную проекцию. Leaflet 1.0.x соответствует схеме координат TMS для EPSG:4326, что является изменением, нарушающим обратную совместимость с поведением 0.7.x. Если вы используете TileLayer с этой СК, убедитесь, что есть два тайла размером 256x256 пикселей, охватывающих всю Землю на нулевом уровне масштабирования, и что начало координат тайла равно (-180,+90) или (-180,-90) для TileLayer с установленным параметром tms.
L.CRS.Earth Служит основой для СК, которые являются глобальными, так как они охватывают Землю. Может использоваться только как основа для других СК и не может использоваться напрямую, так как не имеет code, projection или transformation. distance() возвращает метры.
L.CRS.Simple Простая СК, которая отображает долготу и широту непосредственно в x и y. Может использоваться для карт плоских поверхностей (например, игровых карт). Обратите внимание, что ось y должна оставаться инвертированной (идти снизу вверх). distance() возвращает простое евклидово расстояние.
L.CRS.Base Объект, который определяет системы координат для проецирования географических точек в пиксельные (экранные) координаты и обратно (и в координаты в других единицах для служб WMS). См. пространственную систему отсчета. Leaflet по умолчанию определяет наиболее распространенные СК. Если вы хотите использовать СК, не определенную по умолчанию, взгляните на плагин Proj4Leaflet. Обратите внимание, что экземпляры СК не наследуются от объекта Leaflet's Class и не могут быть созданы. Кроме того, новые классы не могут наследовать от них, и методы не могут быть добавлены к ним с помощью функции include

Рендерер

Базовый класс для реализаций векторного рендерера (SVG, Canvas). Обрабатывает контейнер DOM рендерера, его границы и анимацию масштабирования. Renderer работает как неявная групповая подложка для всех Path - сам рендерер может быть добавлен или удален с карты. Все пути используют рендерер, который может быть неявным (карта будет сама определять тип рендерера и использовать его автоматически) или явным (используя параметр renderer пути). Не используйте этот класс напрямую, используйте SVG и Canvas вместо этого.

Параметры

Параметр Тип По умолчанию Описание
padding Number 0.1 Насколько расширять область вырезания вокруг области просмотра карты (относительно ее размера), например, 0.1 будет 10% от области просмотра карты в каждом направлении
tolerance Number 0 Насколько расширять допуск клика вокруг пути/объекта на карте
Option Type Default Description
pane String 'overlayPane' По умолчанию слой будет добавлен на панель наложений карты overlay pane. Переопределение этого параметра приведет к тому, что слой будет помещен на другую панель по умолчанию.
attribution String null Строка, которая будет показана в элементе управления атрибуцией, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридическим обязательством перед правообладателями и поставщиками тайлов.

События

Event Data Description
update Event Fired when the renderer updates its bounds, center and zoom, for example when its map has moved
Event Data Description
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Event Data Description
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.

Методы

Method Returns Description
addTo(<Map|LayerGroup> map) this

Добавляет слой на заданную карту или группу слоев.

remove() this

Удаляет слой с карты, на которой он в данный момент активен.

removeFrom(<Map> map) this

Удаляет слой с заданной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement представляющий именованную панель на карте. Если name пропущен, возвращает панель для этого слоя.

getAttribution() String

Используется attribution control, возвращает параметр атрибуции.

Method Returns Description
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

Возвращает всплывающее окно, привязанное к этому слою.

Method Returns Description
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

Возвращает подсказку, привязанную к этому слою.

Method Returns Description
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)
});

Доступная информация зависит от типа события:

Событие

Базовый объект события. Все остальные объекты событий также содержат эти свойства.
Property Type Description
type String The event type (e.g. 'click').
target Object The object that fired the event. For propagated events, the last object in the propagation chain that fired the event.
sourceTarget Object The object that originally fired the event. For non-propagated events, this will be the same as the target.
propagatedFrom Object For propagated events, the last object that propagated the event to its event parent.
layer Object Deprecated. The same as propagatedFrom.

KeyboardEvent

Property Type Description
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. For propagated events, the last object in the propagation chain that fired the event.
sourceTarget Object The object that originally fired the event. For non-propagated events, this will be the same as the target.
propagatedFrom Object For propagated events, the last object that propagated the event to its event parent.
layer Object Deprecated. The same as propagatedFrom.

MouseEvent

Свойство Тип Описание
latlng LatLng The geographical point where the mouse event occurred.
layerPoint Point Pixel coordinates of the point where the mouse event occurred relative to the map layer.
containerPoint Point Pixel coordinates of the point where the mouse event occurred 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. For propagated events, the last object in the propagation chain that fired the event.
sourceTarget Object The object that originally fired the event. For non-propagated events, this will be the same as the target.
propagatedFrom Object For propagated events, the last object that propagated the event to its event parent.
layer Object Deprecated. The same as propagatedFrom.

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. For propagated events, the last object in the propagation chain that fired the event.
sourceTarget Object The object that originally fired the event. For non-propagated events, this will be the same as the target.
propagatedFrom Object For propagated events, the last object that propagated the event to its event parent.
layer Object Deprecated. The same as propagatedFrom.

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. For propagated events, the last object in the propagation chain that fired the event.
sourceTarget Object The object that originally fired the event. For non-propagated events, this will be the same as the target.
propagatedFrom Object For propagated events, the last object that propagated the event to its event parent.
layer Object Deprecated. The same as propagatedFrom.

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. For propagated events, the last object in the propagation chain that fired the event.
sourceTarget Object The object that originally fired the event. For non-propagated events, this will be the same as the target.
propagatedFrom Object For propagated events, the last object that propagated the event to its event parent.

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. For propagated events, the last object in the propagation chain that fired the event.
sourceTarget Object The object that originally fired the event. For non-propagated events, this will be the same as the target.
propagatedFrom Object For propagated events, the last object that propagated the event to its event parent.

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. For propagated events, the last object in the propagation chain that fired the event.
sourceTarget Object The object that originally fired the event. For non-propagated events, this will be the same as the target.
propagatedFrom Object For propagated events, the last object that propagated the event to its event parent.
layer Object Deprecated. The same as propagatedFrom.

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. For propagated events, the last object in the propagation chain that fired the event.
sourceTarget Object The object that originally fired the event. For non-propagated events, this will be the same as the target.
propagatedFrom Object For propagated events, the last object that propagated the event to its event parent.
layer Object Deprecated. The same as propagatedFrom.

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. For propagated events, the last object in the propagation chain that fired the event.
sourceTarget Object The object that originally fired the event. For non-propagated events, this will be the same as the target.
propagatedFrom Object For propagated events, the last object that propagated the event to its event parent.
layer Object Deprecated. The same as propagatedFrom.

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. For propagated events, the last object in the propagation chain that fired the event.
sourceTarget Object The object that originally fired the event. For non-propagated events, this will be the same as the target.
propagatedFrom Object For propagated events, the last object that propagated the event to its event parent.

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. For propagated events, the last object in the propagation chain that fired the event.
sourceTarget Object The object that originally fired the event. For non-propagated events, this will be the same as the target.
propagatedFrom Object For propagated events, the last object that propagated the event to its event parent.
layer Object Deprecated. The same as propagatedFrom.

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. For propagated events, the last object in the propagation chain that fired the event.
sourceTarget Object The object that originally fired the event. For non-propagated events, this will be the same as the target.
propagatedFrom Object For propagated events, the last object that propagated the event to its event parent.
layer Object Deprecated. The same as propagatedFrom.

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. For propagated events, the last object in the propagation chain that fired the event.
sourceTarget Object The object that originally fired the event. For non-propagated events, this will be the same as the target.
propagatedFrom Object For propagated events, the last object that propagated the event to its event parent.
layer Object Deprecated. The same as propagatedFrom.

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. For propagated events, the last object in the propagation chain that fired the event.
sourceTarget Object The object that originally fired the event. For non-propagated events, this will be the same as the target.
propagatedFrom Object For propagated events, the last object that propagated the event to its event parent.
layer Object Deprecated. The same as propagatedFrom.

DivOverlay

Базовая модель для L.Popup и L.Tooltip. Унаследуйте от неё для создания пользовательских плагинов, подобных всплывающим окнам.

Опции

END_OF_DOCUMENT_MARKER
Option Type Default Description
offset Point Point(0, 7) Смещение позиции всплывающего окна. Полезно для управления якорем всплывающего окна при открытии его на некоторых оверлеях.
className String '' Настраиваемое имя класса CSS для присвоения всплывающему окну.
pane String 'popupPane' Map pane куда будет добавлено всплывающее окно.
Option Type Default Description
attribution String null Строка, которая будет отображаться в элементе атрибуции, например, "© OpenStreetMap contributors". Она описывает данные слоя и часто является юридическим обязательством перед правообладателями и поставщиками тайлов.

События

Event Data Description
add Event Fired after the layer is added to a map
remove Event Fired after the layer is removed from a map
Event Data Description
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.

Методы

Method Returns Description
addTo(<Map|LayerGroup> map) this

Добавляет слой на заданную карту или группу слоев.

remove() this

Удаляет слой с карты, на которой он в данный момент активен.

removeFrom(<Map> map) this

Удаляет слой с данной карты

getPane(<String> name?) HTMLElement

Возвращает HTMLElement представляющий именованную панель на карте. Если name опущено, возвращает панель для этого слоя.

getAttribution() String

Используется attribution control, возвращает параметр атрибуции.

Method Returns Description
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

Возвращает всплывающее окно, привязанное к этому слою.

Method Returns Description
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

Возвращает подсказку, привязанную к этому слою.

Method Returns Description
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>
Switch Description
L_NO_TOUCH Заставляет Leaflet не использовать сенсорные события, даже если он их обнаруживает.
L_DISABLE_3D Заставляет Leaflet не использовать аппаратное ускорение CSS 3D-преобразований для позиционирования (что может вызывать сбои в некоторых редких средах), даже если они поддерживаются.

noConflict

Этот метод восстанавливает глобальную переменную L до исходного значения, которое она имела до включения Leaflet, и возвращает настоящее пространство имен Leaflet, так что вы можете поместить его в другое место, например так:

<script src='libs/l.js'>
<!-- L points to some other library -->
<script src='leaflet.js'>
<!-- you include Leaflet, it replaces the L variable to Leaflet namespace -->
<script>
var Leaflet = L.noConflict();
// now L points to that other library again, and you can use Leaflet.Map etc.
</script>

version

Константа, представляющая используемую версию Leaflet.

L.version; // contains "1.0.0" (or whatever version is currently in use)

© 2010–2019 Vladimir Agafonkin
© 2010–2011, CloudMade
Maps © OpenStreetMap contributors.
https://leafletjs.com/reference-1.5.0.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API