Leaflet API 文档
当前正在使用 Leaflet 中文文档。 如果当前文档版本与你使用的版本不一致,请点击并查看此列表。
UI 图层
栅格图层
矢量图层
其它图层
基本类型
控件
Util 常用方法类
DOM 常用方法类
地图
API 的核心类 — 它用来在页面中创建并操作地图。
使用示例
// 使用 id 为 map 的 div 容器初始化地图,同时指定地图的中心点和缩放级别
var map = L.map('map', {
center: [51.505, -0.09],
zoom: 13
});
创建对象
工厂函数 | 说明 |
---|---|
L.map( |
在一个指定 id 的 div 元素中初始化地图并设置相关参数。 |
L.map( |
在一个 div 实例中初始化地图并设置相关参数。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
preferCanvas |
Boolean |
false |
是否使用 Canvas 来渲染 Path (路径).默认情况下,所有 Path 都是使用 SVG 进行渲染。 |
控件选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
attributionControl |
Boolean |
true |
默认情况下,是否将 attribution 版权控件添加到地图中。 |
zoomControl |
Boolean |
true |
默认情况下,是否将 zoom 缩放控件添加到地图中。 |
交互选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
closePopupOnClick |
Boolean |
true |
如果你不希望用户点击地图时 popups(弹出窗口)自动关闭,则可以将其设置为 false。 |
zoomSnap |
Number |
1 |
强制让地图的缩放级别始终为这个值的倍数,特别是在 fitBounds() 或 pinch-zoom 后。默认情况下,缩放级别将是其最接近的整数;
较低的值(例如 0.5 or 0.1)允许更大的颗粒度。数值 0 意味着缩放级别将不会被 fitBounds 或 pinch-zoom。 |
zoomDelta |
Number |
1 |
控件在进行 zoomIn() 、 zoomOut()
以及按 + - 键或者使用 zoom 进行缩放之后,地图缩放级别改变的值。小于 1 的值(例如 0.5)允许更大的颗粒度。 |
trackResize |
Boolean |
true |
地图是否会自动根据浏览器窗口的大小来更新自己。 |
boxZoom |
Boolean |
true |
是否可以在按住 shift 键的同时拖动鼠标将地图缩放到指定的矩形区域。 |
doubleClickZoom |
Boolean|String |
true |
地图是否可以通过双击来放大,以及在按住 shift 的同时双击来缩小。如果设置为 'center',不管鼠标在哪里,双击缩放都将缩放到视图的中心。 |
dragging |
Boolean |
true |
地图是否可以通过 mouse/touch 进行拖动。 |
地图状态选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
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 |
Marker 标记是否使用缩放动画进行缩放。默认情况下,它在所有支持 CSS3 Transitions 的浏览器中都是启用的,Android 除外。 |
transform3DLimit |
Number |
2^23 |
定义了 CSS 转换的最大尺寸。默认值不应该被改变,除非网页浏览器在做了一个大的 panBy 后将层定位在错误的地方。 |
Panning Inertia 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
inertia |
Boolean |
* |
如果启用,地图的平移会有一种惯性效应,即地图在拖动时形成动力,并在一段时间内继续向同一方向移动。在触摸设备上感觉特别好。除非在旧的 Android 设备上运行,否则默认情况下是启用的。 |
inertiaDeceleration |
Number |
3000 |
惯性运动减速的速度, 以像素/秒²单位。 |
inertiaMaxSpeed |
Number |
Infinity |
惯性运动的最大速度,以像素/秒为单位。 |
easeLinearity |
Number |
0.2 |
|
worldCopyJump |
Boolean |
false |
启用该选项后,当你平移到世界的另一个 "copy" 时,地图会跟踪并无缝跳转到原来的副本,这样所有的覆盖物如 markers(标记)和 vector layers(矢量图层)都仍然可见。 |
maxBoundsViscosity |
Number |
0.0 |
如果设置了 maxBounds,这个选项将控制拖动地图时边界的稳固程度。默认值为 0.0,允许用户以正常速度在界外拖动,更高的值会减慢地图在界外的拖动速度,而 1.0 使界外完全稳固,防止用户在界外拖动。 |
按键导航选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
keyboard |
Boolean |
true |
地图是否获得焦点,并且允许用户通过键盘和 +/- 来进行浏览地图。 |
keyboardPanDelta |
Number |
80 |
按下方向键时,平移的像素数量。 |
鼠标选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
scrollWheelZoom |
Boolean|String |
true |
地图是否允许通过使用鼠标滚轮进行缩放。如果通过'center',不管鼠标在哪里,都将会放大到视图的中心。 |
wheelDebounceTime |
Number |
40 |
限制滚轮的触发速度(以毫秒为单位)。默认情况下,用户通过滚轮缩放的次数不能超过每 40 毫秒一次。 |
wheelPxPerZoomLevel |
Number |
60 |
多少滚动像素(由 L.DomEvent.getWheelDelta 报告)意味着一个完整缩放级别的更改。 较小的值将使滚轮变焦更快(反之亦然) |
触摸交互选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
tapHold |
Boolean |
|
是否启用 mobile hacks 以支持 taps(在 iOS / Android上 修复 200ms 点击延迟)和 touch(触发 contextmenu 事件)。 |
tapTolerance |
Number |
15 |
用户在触摸时,移动手指的像素数超过此值时被认为是有效的 tap。 |
touchZoom |
Boolean|String |
* |
地图是否允许通过两根手指的触摸拖动进行缩放。如果通过 'center',就会放大到视图的中心,而不管 touch 事件(手指)在哪里。除了老式的 Android 系统外,对具有 touch-capable 功能的网络浏览器来说是启用的。 |
bounceAtZoomLimits |
Boolean |
true |
如果您不希望在地图缩放超过最小/最大缩放范围时反弹,请将其设置为 false。 |
事件
图层事件
事件名 | 数据 | 说明 |
---|---|---|
baselayerchange |
LayersControlEvent |
通过图层控件更改基本图层时触发。 |
overlayadd |
LayersControlEvent |
通过图层控件选择叠加图层时触发。 |
overlayremove |
LayersControlEvent |
通过图层控件取消选择叠加图层时触发。 |
layeradd |
LayerEvent |
将新图层添加到地图时触发。 |
layerremove |
LayerEvent |
从地图上删除某些图层时触发 |
地图状态变更事件
事件名 | 数据 | 说明 |
---|---|---|
zoomlevelschange |
Event |
当地图上的缩放级别数因添加或移除图层而更改时触发。 |
resize |
ResizeEvent |
调整地图大小时触发。 |
unload |
Event |
当使用 remove 方法销毁地图时触发。 |
viewreset |
Event |
当地图需要重绘其内容时触发(通常发生在地图缩放或加载时)。 对于创建 custom overlays 非常有用。 |
load |
Event |
地图初始化时触发(首次设置其中心和缩放比例时)。 |
zoomstart |
Event |
地图缩放即将更改时(例如在缩放动画之前)触发。 |
movestart |
Event |
当地图视图开始更改时触发(例如,用户开始拖动地图)。 |
zoom |
Event |
在缩放级别的任何更改(包括缩放和飞行动画)期间反复触发。 |
move |
Event |
在地图的任何移动过程中反复触发,包括平移和飞行动画。 |
zoomend |
Event |
在任何动画执行完毕地图更新后都会触发。 |
moveend |
Event |
地图中心停止更改时触发(例如,用户停止拖动地图)。 |
Popup 弹窗事件
事件名 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
在地图上打开 popup(弹出窗口)时触发。 |
popupclose |
PopupEvent |
当地图中的 popup(弹出窗口)关闭时触发。 |
autopanstart |
Event |
打开 popup(弹出窗口)时地图开始自动平移时触发。 |
Tooltip 工具提示事件
事件名 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
在地图上打开 tooltip(工具提示)时触发。 |
tooltipclose |
TooltipEvent |
地图中的 tooltip(工具提示)关闭时触发。 |
Location 定位相关事件
事件名 | 数据 | 说明 |
---|---|---|
locationerror |
ErrorEvent |
当获取地理位置(使用 locate 方法)失败时触发。 |
locationfound |
LocationEvent |
当获取地理位置(使用 locate 方法)成功时触发。 |
交互事件
事件名 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户点击地图时触发。 |
dblclick |
MouseEvent |
当用户双击地图时触发。 |
mousedown |
MouseEvent |
当用户在地图上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户释放地图上的鼠标按钮时触发。 |
mouseover |
MouseEvent |
当鼠标进入地图时触发。 |
mouseout |
MouseEvent |
当鼠标离开地图时触发。 |
mousemove |
MouseEvent |
当鼠标在地图上移动时触发。 |
contextmenu |
MouseEvent |
当用户在地图上按下鼠标右键时触发,从而阻止默认浏览器上下文菜单显示,如果此事件上有侦听器。 当用户长按时,也会在移动设备上触发。 |
keypress |
KeyboardEvent |
当用户在聚焦地图时按下键盘上输入字符时触发。 |
keydown |
KeyboardEvent |
当地图聚焦时用户按下键盘上的键时触发。 与keypress事件不同,对于产生字符值的键和不产生字符值的键都会触发keydown事件。 |
keyup |
KeyboardEvent |
当用户在地图被聚焦时从键盘上释放一个按键时触发。 |
preclick |
MouseEvent |
在鼠标点击地图之前触发(当你希望在点击事件触发之前执行某些操作时可以使用)。 |
其它事件
事件名 | 数据 | 说明 |
---|---|---|
zoomanim |
ZoomAnimEvent |
每个缩放动画至少触发一次。 对于连续缩放(如捏合缩放),在缩放过程中每帧触发一次。 |
方法
方法名 | 返回值 | 说明 |
---|---|---|
getRenderer( |
Renderer |
返回 |
图层和控件
方法名 | 返回值 | 说明 |
---|---|---|
addControl( |
this |
添加控件到地图上 |
removeControl( |
this |
从地图上移除一个指定的控件 |
addLayer( |
this |
添加图层到地图上 |
removeLayer( |
this |
从地图上移除一个指定的图层 |
hasLayer( |
Boolean |
地图上是否存在指定的图层,如果给定的图层当前已被加到地图上,则返回 true |
eachLayer( |
this |
遍历地图的图层,选择指定上下文的迭代器函数。
|
openPopup( |
this |
打开指定的 Popup(弹窗)。(如果之前有打开其他的,会自动关闭,确保只有一个) |
openPopup( |
this |
创建指定的内容和选项的 Popup(弹窗),并在地图上的指定点打开它。 |
closePopup( |
this |
关闭之前打开的(或给定某个)Popup (弹窗)。 |
openTooltip( |
this |
打开指定的 Tooltip(提示框)。 |
openTooltip( |
this |
创建并打开具有指定内容和选项的 Tooltip(提示框)。 |
closeTooltip( |
this |
关闭之前打开的(或给定某个)Tooltip(提示框)。 |
修改地图状态
方法名 | 返回值 | 说明 |
---|---|---|
setView( |
this |
用指定的动画选项设置地图的视图(地理中心和缩放)。 |
setZoom( |
this |
设置地图的缩放级别。 |
zoomIn( |
this |
放大地图级别 ( delta 为空时,默认值取自 |
zoomOut( |
this |
缩小地图级别 ( delta 为空时,默认值取自 |
setZoomAround( |
this |
缩放地图,同时保持地图上的指定地理位置不变(例如内部用于滚动缩放和双击缩放)。 |
setZoomAround( |
this |
缩放地图,同时保持地图上相对于左上角的指定像素位置不变。 |
fitBounds( |
this |
将地图的视图设置在给定的矩形地理范围内,地图会自动计算最大缩放级别和中心点。 |
fitWorld( |
this |
设置一个包含整个世界的地图视图,其缩放级别为最大。 |
panTo( |
this |
将地图平移到一个指定的中心点。 |
panBy( |
this |
将地图平移一定数量的像素(动画)。 |
flyTo( |
this |
执行一个平滑的平移-缩放动画,移动缩放地图范围至指定的地理中心和级别。 |
flyToBounds( |
this |
|
setMaxBounds( |
this |
将地图视图限制在给定的范围内(参考 maxBounds 选项)。 |
setMinZoom( |
this |
设置地图最小缩放级别 (参考 minZoom 参数选项)。 |
setMaxZoom( |
this |
设置地图最大缩放级别 (参考 maxZoom 参数选项)。 |
panInsideBounds( |
this |
将地图平移到离给定边界最近的视图(如果还没有的话),如果有的话,用特定的选项控制动画。 |
panInside( |
this |
平移地图的最小数量以使 |
invalidateSize( |
this |
检查地图容器的大小是否发生变化,如果发生变化则更新地图--在你动态改变地图大小后调用它,默认情况下也会发生平移动画。如果 options.pan 为 false,将不会发生平移。如果 options.debounceMoveend 为 true,它将延迟 moveend 事件,这样即使该方法被连续调用多次,也不会经常发生。 |
invalidateSize( |
this |
检查地图容器的大小是否改变,如果改变则更新地图--在你动态改变地图大小后调用它,默认情况下也会为平移设置动画。 |
stop() |
this |
如果有的话,则停止当前运行 panTo 或 flyTo 动画。 |
地理定位
方法名 | 返回值 | 说明 |
---|---|---|
locate( |
this |
尝试使用 Geolocation API 定位用户,成功时触发带有位置数据的 |
stopLocate() |
this |
停止监视先前由 map.locate({watch:true})初始化的位置,如果调用 map.locate 时设置了 {setView:true},则放弃重置地图视图。 |
其它
方法名 | 返回值 | 说明 |
---|---|---|
addHandler( |
this |
给定其名称和构造函数,将新的 |
remove() |
this |
销毁地图并清除所有相关的事件侦听器。 |
createPane( |
HTMLElement |
如果给定名称不存在,则创建一个新的map pane,然后将其返回。 该窗格被创建为容器的子级,或者被创建为主地图窗格的子级(如果未设置)。 |
getPane( |
HTMLElement |
返回一个地图窗口 map pane,给它一个名称或者 HTML 的节点。 |
getPanes() |
Object |
返回一个普通对象,其中包含所有窗格的名称为键,并将窗格 panes 作为值。 |
getContainer() |
HTMLElement |
返回一个包含地图的 HTML 节点。 |
whenReady( |
this |
当地图使用视图(中心和缩放)和至少一层初始化时,或者如果已经初始化,则立即运行给定的函数 fn(如果已初始化)(可选地传递函数上下文)。 |
获取地图状态
方法名 | 返回值 | 说明 |
---|---|---|
getCenter() |
LatLng |
返回地图中心点的经纬度 |
getZoom() |
Number |
返回地图此时的缩放级别 |
getBounds() |
LatLngBounds |
返回当前地图的矩形边界 |
getMinZoom() |
Number |
返回地图的最小缩放级别(如果在地图或任何图层的 minZoom 选项中设置过),或者默认为 0。 |
getMaxZoom() |
Number |
返回地图的最大缩放级别(如果在地图或任何图层的 maxZoom 选项中设置过) |
getBoundsZoom( |
Number |
返回给定边界与地图视图完全吻合的最大缩放级别。如果 inside(可选)被设置为 true,该方法反而会返回地图视图完全适合给定边界的最小缩放级别。 |
getSize() |
Point |
返回地图容器的当前大小(以像素为单位)。 |
getPixelBounds() |
Bounds |
返回当前地图视图的投影像素坐标的边界(有时在图层和叠加实现中很有用)。 |
getPixelOrigin() |
Point |
返回地图层左上角的投影像素坐标(在自定义图层和叠加实现中很有用)。 |
getPixelWorldBounds( |
Bounds |
返回指定缩放级别的世界地图边界的像素坐标。如果 zoom 参数省略,则使用地图的当前缩放级别。 |
转换
方法名 | 返回值 | 说明 |
---|---|---|
getZoomScale( |
Number |
返回要应用于从缩放级别从缩放到缩放的地图过渡的比例因子。 在内部使用以帮助缩放动画。 |
getScaleZoom( |
Number |
返回地图最终到达的缩放级别,如果它处于fromZoom 级别,并且所有内容都按比例缩放scale。 |
project( |
Point |
|
unproject( |
LatLng |
逆向 |
layerPointToLatLng( |
LatLng |
给定相对于origin pixel的相应像素坐标,转换为相应的地理坐标(对于当前缩放级别)。 |
latLngToLayerPoint( |
Point |
给定地理坐标,转换为相对于origin pixel的相应像素坐标。(在地图上进行位置叠加时比较有用) |
wrapLatLng( |
LatLng |
如果它们在CRS的边界之外,则返回一个 |
wrapLatLngBounds( |
LatLngBounds |
返回 |
distance( |
Number |
根据地图的参考系来返回两个地理位置之间的距离,默认为米。 |
containerPointToLayerPoint( |
Point |
给定相对于地图container容器的像素坐标,返回相对于origin pixel的相应像素坐标。 |
layerPointToContainerPoint( |
Point |
给定相对于origin pixel的像素坐标,返回相对于地图container容器的相应像素坐标。 |
containerPointToLatLng( |
LatLng |
给定相对于地图container容器的像素坐标,返回对应的地理坐标(对于当前缩放级别)。 |
latLngToContainerPoint( |
Point |
给定地理坐标,返回相对于地图container容器的相应像素坐标。 |
mouseEventToContainerPoint( |
Point |
给定一个MouseEvent对象,返回相对于发生事件的地图容器的像素坐标(与地图左上角相关)。 |
mouseEventToLayerPoint( |
Point |
给定一个MouseEvent对象,返回相对于事件发生的origin pixel的像素坐标。 |
mouseEventToLatLng( |
LatLng |
给定一个MouseEvent对象,返回发生事件的地理坐标。 |
方法名 | 返回值 | 说明 |
---|---|---|
on( |
this |
将 listener 函数(fn)添加到对象的特定事件类型。 您可以选择指定 listener 的上下文(此关键字将指向的对象)。 您还可以传递几种以空格分隔的类型(例如'click dblclick')。 |
on( |
this |
添加一组 type/listener,例如 {click:onClick,mousemove:onMouseMove} |
off( |
this |
删除以前添加的侦听器功能。 如果未指定功能,它将从对象中删除该特定事件的所有 listener。 请注意,如果将自定义上下文传递给on,则必须将相同的上下文传递给 off 才能删除 listener。 |
off( |
this |
删除一组 type/listener。 |
off() |
this |
删除对象上所有事件的所有 listeners。 这包括隐式附加的事件。 |
fire( |
this |
触发指定类型的事件。 您可以选择提供一个数据对象- listener 函数的第一个参数将包含其属性。 可以选择将事件传播给事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
行为与 |
addEventParent( |
this |
再父级添加一个事件-将接收传播事件的 |
removeEventParent( |
this |
删除父级事件,因此它将停止接收传播的事件 |
addEventListener(…) |
this |
|
removeEventListener(…) |
this |
|
clearAllEventListeners(…) |
this |
|
addOneTimeEventListener(…) |
this |
|
fireEvent(…) |
this |
|
hasEventListeners(…) |
Boolean |
Properties 属性
Controls 控件
属性 | 类型 | 说明 |
---|---|---|
zoomControl |
Control.Zoom |
默认缩放控件(仅当创建地图时该 zoomControl 选项是 true )。 |
Handlers 处理程序
属性 | 类型 | 说明 |
---|---|---|
boxZoom |
Handler |
矩形框(使用鼠标按住Shift键并拖动)缩放处理程序 |
doubleClickZoom |
Handler |
双击缩放处理程序 |
dragging |
Handler |
地图拖动处理程序(通过鼠标和触摸) |
keyboard |
Handler |
键盘导航处理程序 |
scrollWheelZoom |
Handler |
滚轮缩放处理程序 |
tapHold |
Handler |
长按处理程序,以模拟 contextmenu 事件(在移动端的 Safari 中很有用)。 |
touchZoom |
Handler |
触摸地图缩放处理程序 |
Map panes 地图窗格
Pane | 类型 | Z-index | 说明 |
---|---|---|---|
mapPane |
HTMLElement |
'auto' |
包含所有其他地图窗格(pane)的窗格(pane) |
tilePane |
HTMLElement |
200 |
GridLayer 和 TileLayer 所在的窗格(panes)。 |
overlayPane |
HTMLElement |
400 |
矢量的窗格(pane) (Path , 比如 Polyline 和 Polygon ), ImageOverlay 和 VideoOverlay |
shadowPane |
HTMLElement |
500 |
用于的叠加阴影的窗格(pane) (例如: Marker shadows) |
markerPane |
HTMLElement |
600 |
Icon 和 Marker 标注所在的窗格 |
tooltipPane |
HTMLElement |
650 |
用于 Tooltip 工具提示 的窗格(pane) |
popupPane |
HTMLElement |
700 |
用于 Popup 弹出窗口 的窗格(pane) |
Locate options 定位选项
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 规范中的说明。 |
Zoom options 缩放选项
Map
在一些修改地图缩放等级的方法中使用到的 options
参数。这是一个简单的 JavaScript 对象,其中包含以下可选参数:选项 | 类型 | 默认 | 说明 |
---|---|---|---|
animate |
Boolean |
|
如果未指定并且缩放原点在当前视图内,则会发生缩放动画。如果为 true ,地图将尝试动画缩放而不管缩放原点在哪里。设置为 false 将使其始终在没有动画的情况下完全重置视图。 |
Pan options 平移选项
Map
在一些修改地图中心的方法中使用到的 options
参数。这是一个简单的 JavaScript 对象,其中包含以下可选参数:选项 | 类型 | 默认 | 说明 |
---|---|---|---|
animate |
Boolean |
|
如果为 true 并且可能的话,平移将始终执行动画。如果为 false ,它不会为平移设置动画,如果平移超过一个屏幕,则重置地图视图,或者只是为地图窗格设置新的偏移量(除了 panBy 之外)。 |
duration |
Number |
0.25 |
动画平移的持续时间,以秒为单位。 |
easeLinearity |
Number |
0.25 |
平移动画缓动的曲率因子(三次贝塞尔曲线 的第三个参数 )。1.0 表示线性动画,这个数字越小,曲线越弯曲。 |
noMoveStart |
Boolean |
false |
如果为 true ,平移将不会在开始时触发 movestart 事件(内部用于平移的惯性)。 |
Zoom/pan options 缩放/平移选项
选项 | 类型 | 默认 | 说明 |
---|---|---|---|
animate |
Boolean |
|
如果未指定并且缩放原点在当前视图内,则会发生缩放动画。如果为 true ,地图将尝试动画缩放而不管缩放原点在哪里。设置为 false 将使其始终在没有动画的情况下完全重置视图。 |
选项 | 类型 | 默认 | 说明 |
---|---|---|---|
duration |
Number |
0.25 |
动画平移的持续时间,以秒为单位。 |
easeLinearity |
Number |
0.25 |
平移动画缓动的曲率因子(三次贝塞尔曲线 的第三个参数 )。1.0 表示线性动画,这个数字越小,曲线越弯曲。 |
noMoveStart |
Boolean |
false |
如果为 true ,平移将不会在开始时触发 movestart 事件(内部用于平移的惯性)。 |
Padding 选项
选项 | 类型 | 默认 | 说明 |
---|---|---|---|
paddingTopLeft |
Point |
[0, 0] |
设置在将视图设置为适合边界时不应考虑的地图容器左上角的填充量。如果您在地图上有一些控件叠加层(如侧边栏)并且您不希望它们遮挡您要缩放到的对象,则此功能很有用。 |
paddingBottomRight |
Point |
[0, 0] |
地图右下角也是如此。 |
padding |
Point |
[0, 0] |
相当于将左上角和右下角填充设置为相同的值。 |
FitBounds 选项
选项 | 类型 | 默认 | 说明 |
---|---|---|---|
maxZoom |
Number |
null |
允许使用的最大缩放。 |
选项 | 类型 | 默认 | 说明 |
---|---|---|---|
animate |
Boolean |
|
如果未指定并且缩放原点在当前视图内,则会发生缩放动画。如果为 true ,地图将尝试动画缩放而不管缩放原点在哪里。设置为 false 将使其始终在没有动画的情况下完全重置视图。 |
选项 | 类型 | 默认 | 说明 |
---|---|---|---|
duration |
Number |
0.25 |
动画平移的持续时间,以秒为单位。 |
easeLinearity |
Number |
0.25 |
平移动画缓动的曲率因子(三次贝塞尔曲线 的第三个参数 )。1.0 表示线性动画,这个数字越小,曲线越弯曲。 |
noMoveStart |
Boolean |
false |
如果为 true ,平移将不会在开始时触发 movestart 事件(内部用于平移的惯性)。 |
Marker 标记
L.Marker 用于在地图上显示可点击/可拖动的图标。扩展自 Layer
。
使用示例
L.marker([50.5, 30.5]).addTo(map);
Creation
构造函数 | 说明 |
---|---|
L.marker( |
给出一个地理位置和可选的参数,实例化一个Marker对象。 |
Options 选项
选项 | 类型 | 默认 | 说明 |
---|---|---|---|
icon |
Icon |
* |
用于渲染标记(marker)的图标实例。有关如何自定义标记(marker)图标的详细信息,请参阅 Icon 文档。如果未指定,L.Icon.Default 则使用公共实例。 |
keyboard |
Boolean |
true |
是否可以用键盘标记并按回车键进行点击。 |
title |
String |
'' |
悬停在标记(marker)上时出现的浏览器 tooltip 提示文本内容(默认情况下没有 tooltip 提示)。 对无障碍环境很有帮助。 |
alt |
String |
'Marker' |
Icon图标的 alt 属性提示文本内容。
对无障碍环境很有帮助。 |
zIndexOffset |
Number |
0 |
默认情况下,标记(marker)图像 zIndex 是根据其纬度自动设置的。如果您想将标记置于所有其他标记(marker)之上(或之下),则使用此选项指定一个高值,如 1000 (或高的负值)。 |
opacity |
Number |
1.0 |
标记(marker)的不透明度。 |
riseOnHover |
Boolean |
false |
如果为 true ,当你把鼠标悬停在它上面时,该标记(marker)会在其他标记之上。 |
riseOffset |
Number |
250 |
用于 riseOnHover 功能的 z-index 偏移。 |
pane |
String |
'markerPane' |
Map pane 将添加标记图标的位置。 |
shadowPane |
String |
'shadowPane' |
Map pane 将添加标记阴影的位置。 |
bubblingMouseEvents |
Boolean |
false |
当为 true 时,此标记上的鼠标事件将触发地图上的相同事件(除非使用 L.DomEvent.stopPropagation )。 |
autoPanOnFocus |
Boolean |
true |
When true , the map will pan whenever the marker is focused (via
e.g. pressing tab on the keyboard) to ensure the marker is
visible within the map's bounds |
可拖动的 marker 选项
选项 | 类型 | 默认 | 说明 |
---|---|---|---|
draggable |
Boolean |
false |
标记(marker)是否可通过鼠标/触摸拖动。 |
autoPan |
Boolean |
false |
将此标记(marker)拖动到其边缘附近时是否平移地图。 |
autoPanPadding |
Point |
Point(50, 50) |
开始平移地图时距离边缘的距离(左/右和上/下,以像素为单位)。 |
autoPanSpeed |
Number |
10 |
地图应该平移的像素数。 |
选项 | 类型 | 默认 | 说明 |
---|---|---|---|
interactive |
Boolean |
true |
如果为 false ,该图层将不会触发鼠标事件,并作为底层地图的一部分。 |
选项 | 类型 | 默认 | 说明 |
---|---|---|---|
attribution |
String |
null |
要在属性控件中显示的字符串,例如:"© OpenStreetMap contributors"。它描述了一些图层信息,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
move |
Event |
当标记通过 setLatLng 或通过 dragging 移动时触发该事件,并且旧坐标和新坐标会作为 oldLatLng 、latlng 包含在事件参数中。 |
Dragging events 拖拽事件
事件 | 数据 | 说明 |
---|---|---|
dragstart |
Event |
当用户开始拖动标记时触发。 |
movestart |
Event |
当标记物开始移动(因为拖动)时触发。 |
drag |
Event |
当用户拖动标记时重复触发。 |
dragend |
DragEndEvent |
当用户停止拖动标记时触发。 |
moveend |
Event |
当标记物停止移动(因为拖动)时启动。 |
事件 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户 click(或 tap)图层时触发。 |
dblclick |
MouseEvent |
当用户 double-click(或 double-tap)图层时触发。 |
mousedown |
MouseEvent |
当用户在图层上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户释放在图层上按下的鼠标按钮时触发。 |
mouseover |
MouseEvent |
当鼠标进入图层时触发。 |
mouseout |
MouseEvent |
当鼠标离开图层时触发。 |
contextmenu |
MouseEvent |
当用户在图层上点击右键时触发,如果此事件有监听者,则阻止默认的浏览器上下文菜单显示。在移动设备上,当用户长按时,也会在手机上触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
getLatLng() |
LatLng |
返回标记的当前地理位置。 |
setLatLng( |
this |
将标记位置更改为指定坐标。 |
setZIndexOffset( |
this |
更改标记的 zIndex 偏移量 。 |
getIcon() |
Icon |
返回标记使用的当前图标 |
setIcon( |
this |
更改标记图标。 |
setOpacity( |
this |
更改标记的透明度。 |
Other methods 其它方法
方法 | 返回值 | 说明 |
---|---|---|
toGeoJSON( |
Object |
|
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(layer group)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格(pane)的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将弹出窗口绑定到传入的图层 |
unbindPopup() |
this |
移除之前用 |
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果弹出窗口(popup)已打开,则关闭绑定到该层的弹出窗口。 |
togglePopup() |
this |
根据当前状态打开或关闭绑定到该层的弹出窗口。 |
isPopupOpen() |
boolean |
如果该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示(tooltip)。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示(tooltip)当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示(tooltip)的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示(tooltip)。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
Properties 属性
Interaction handlers 交互处理程序
Handler
方法)。示例:
marker.dragging.disable();
属性 | 类型 | 说明 |
---|---|---|
dragging |
Handler |
标记(marker)拖动处理程序(通过鼠标和触摸),仅当标记 (marker) 在地图上时有效(否则设置 marker.options.draggable )。 |
DivOverlay
L.Popup 和 L.Tooltip 的基本模型,比如继承自它的 custom overlays 插件。
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
interactive |
Boolean |
false |
如果为 true,popup/tooltip 将监听鼠标事件。 |
offset |
Point |
Point(0, 0) |
overlay 的偏移量。 |
className |
String |
'' |
一个自定义的 CSS 类名称,用于分配给 overlay。 |
pane |
String |
undefined |
将在 Map pane 中添加 overlay。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
bubblingMouseEvents |
Boolean |
true |
当为 true 时,此标记上的鼠标事件将触发地图上的相同事件(除非使用 L.DomEvent.stopPropagation )。 |
选项 | 类型 | 默认 | 描述 |
---|---|---|---|
attribution |
String |
null |
在属性控件中显示的字符串,例如:"© OpenStreetMap contributors"。它描述了图层数据,并且通常是对版权所有者和瓦片提供商的法律义务。 |
Events 事件
DivOverlay events
事件 | 数据 | 说明 |
---|---|---|
contentupdate |
Event |
当 overlay 的内容被更新时触发。 |
事件 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户点击图层(Layer)时触发。 |
dblclick |
MouseEvent |
当用户双击图层(Layer)时触发。 |
mousedown |
MouseEvent |
当用户在图层(Layer)上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户释放图层(Layer)上的鼠标按钮时触发。 |
mouseover |
MouseEvent |
当鼠标进入图层(Layer)时触发。 |
mouseout |
MouseEvent |
当鼠标离开图层(Layer)时触发。 |
contextmenu |
MouseEvent |
当用户在图层(Layer)上按下鼠标右键时触发,从而阻止默认浏览器上下文菜单显示,如果此事件上有侦听器。 当用户长按时,也会在移动设备上触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的弹出窗口(popup)打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的弹出窗口(popup)关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的工具提示(tooltip)打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的工具提示(tooltip)关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
openOn( |
this |
Adds the overlay to the map.
Alternative to |
close() |
this |
Closes the overlay.
Alternative to |
toggle( |
this |
Opens or closes the overlay bound to layer depending on its current state.
Argument may be omitted only for overlay bound to layer.
Alternative to |
getLatLng() |
LatLng |
Returns the geographical point of the overlay. |
setLatLng( |
this |
Sets the geographical point where the overlay will open. |
getContent() |
String|HTMLElement |
Returns the content of the overlay. |
setContent( |
this |
Sets the HTML content of the overlay. If a function is passed the source layer will be passed to the function.
The function should return a |
getElement() |
String|HTMLElement |
Returns the HTML container of the overlay. |
update() |
null |
Updates the overlay content, layout and position. Useful for updating the overlay after something inside changed, e.g. image loaded. |
isOpen() |
Boolean |
Returns |
bringToFront() |
this |
Brings this overlay in front of other overlays (in the same map pane). |
bringToBack() |
this |
Brings this overlay to the back of other overlays (in the same map pane). |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 描述 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
Popup 弹出窗口
用于在地图的某些位置打开弹出窗口。使用 Map.openPopup 打开弹出窗口,同时确保一次只打开一个弹出窗口(推荐使用),或者使用 Map.addLayer 打开任意多个。
使用示例
如果您只想将弹出窗口(popup)绑定到标记(marker)单击然后打开它,这其实很简单:
marker.bindPopup(popupContent).openPopup();
像折线(polylines)这样的路径叠加也有一个 bindPopup
方法。这是在地图上打开弹出窗口的更复杂的方法:
var popup = L.popup()
.setLatLng(latlng)
.setContent('<p>Hello world!<br />This is a nice popup.</p>')
.openOn(map);
Creation
构造函数 | 说明 |
---|---|
L.popup( |
实例化一个 Popup 对象,给定一个可选的 options 对象,描述其外观和位置,以及一个可选的 source 对象,用它所指向的图层的引用来标记弹出窗口(popup)。 |
Options 选项
选项 | 类型 | 默认 | 描述 |
---|---|---|---|
pane |
String |
'popupPane' |
Map pane where the popup will be added. |
offset |
Point |
Point(0, 7) |
The offset of the popup position. |
maxWidth |
Number |
300 |
Popup 的最大宽度,以像素为单位。 |
minWidth |
Number |
50 |
Popup 的最小宽度,以像素为单位。 |
maxHeight |
Number |
null |
设置后,如果其内容超过它,则在 Popup 内创建给定高度的可滚动容器。 |
autoPan |
Boolean |
true |
如果你不想让地图做平移动画,把它设置为 false ,以适应打开的 Popup。 |
autoPanPaddingTopLeft |
Point |
null |
自动平移后,Popup 与地图左上角之间的边距。 |
autoPanPaddingBottomRight |
Point |
null |
自动平移后,Popup 与地图右下角之间的边距。 |
autoPanPadding |
Point |
Point(5, 5) |
相当于将左上角和右下角自动平移填充设置为相同的值。 |
keepInView |
Boolean |
false |
如果您想防止用户在弹出窗口(popup)打开时将其移出屏幕,请将其设置为true 。 |
closeButton |
Boolean |
true |
控制弹出窗口中是否有关闭按钮。 |
autoClose |
Boolean |
true |
如果您想重写在打开另一个弹出框时关闭弹出框的默认行为,请将其设置为 false 。 |
closeOnEscapeKey |
Boolean |
true |
如果你想覆盖 ESC 键关闭弹出窗口 (popup) 的默认行为,将其设置为 false 。 |
closeOnClick |
Boolean |
* |
如果您想覆盖用户点击地图时关闭弹出窗口的默认行为,请设置它。默认为地图 closePopupOnClick 选项。 |
className |
String |
'' |
为弹出窗口(popup)设置自定义 CSS 类名称。 |
选项 | 类型 | 默认 | 描述 |
---|---|---|---|
interactive |
Boolean |
false |
如果为 true,popup/tooltip 将监听鼠标事件。 |
选项 | 类型 | 默认 | 说明 |
---|---|---|---|
bubblingMouseEvents |
Boolean |
true |
当为 true 时,鼠标事件将在地图上触发相同的事件 (除非使用 L.DomEvent.stopPropagation )。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
contentupdate |
Event |
当 overlay 的内容被更新时触发。 |
事件 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户 click 或 tap 该图层时触发。 |
dblclick |
MouseEvent |
当用户 double-click 或 double-tap 该图层时触发。 |
mousedown |
MouseEvent |
当用户在该图层上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户在该图层上释放按下的鼠标按钮时触发。 |
mouseover |
MouseEvent |
鼠标进入该图层时触发。 |
mouseout |
MouseEvent |
当鼠标离开该图层时触发。 |
contextmenu |
MouseEvent |
当用户在图层上点击右键时触发,如果该事件有监听者,可以防止显示默认的浏览器上下文菜单。在手机上,当用户保持单次触摸一秒钟(也叫长按)时也会触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当与该图层绑定的 Popup 被打开时触发 |
popupclose |
PopupEvent |
当与该图层绑定的 Popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该图层的 Tooltip 被打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该图层的 Tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
openOn( |
this |
将弹出窗口添加到地图上,并关闭之前的窗口。与 |
方法 | 返回值 | 说明 |
---|---|---|
close() |
this |
Closes the overlay.
Alternative to |
toggle( |
this |
Opens or closes the overlay bound to layer depending on its current state.
Argument may be omitted only for overlay bound to layer.
Alternative to |
getLatLng() |
LatLng |
Returns the geographical point of the overlay. |
setLatLng( |
this |
Sets the geographical point where the overlay will open. |
getContent() |
String|HTMLElement |
Returns the content of the overlay. |
setContent( |
this |
Sets the HTML content of the overlay. If a function is passed the source layer will be passed to the function.
The function should return a |
getElement() |
String|HTMLElement |
Returns the HTML container of the overlay. |
update() |
null |
Updates the overlay content, layout and position. Useful for updating the overlay after something inside changed, e.g. image loaded. |
isOpen() |
Boolean |
Returns |
bringToFront() |
this |
Brings this overlay in front of other overlays (in the same map pane). |
bringToBack() |
this |
Brings this overlay to the back of other overlays (in the same map pane). |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 描述 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
Tooltip 工具提示
用于在地图图层顶部显示小文本。
使用示例
marker.bindTooltip("my tooltip text").openTooltip();
关于工具提示(tootip)偏移,Leaflet 在计算工具提示偏移时考虑了两个选项:
- 工具提示(tooltip)的
offset
选项:它默认为 [0,0],并且它只针对于一个工具提示。添加正 x 偏移以将工具提示向右移动,并添加正 y 偏移以将其移动到底部,负数将移动到左侧和顶部。 - Icon 的
tooltipAnchor
选项:只适用于 Marker。你如果你使用一个自定义的图标,应该调整这个值。
Creation
构造函数 | 说明 |
---|---|
L.tooltip( |
实例化一个 Tooltip 对象,给定一个可选的 options 对象,描述其外观和位置,以及一个可选的 source 对象,用它所指向的 Layer 的引用来标记 Tooltip。 |
Options 选项
选项 | 类型 | 默认 | 说明 |
---|---|---|---|
pane |
String |
'tooltipPane' |
地图窗格 将添加 Tooltip 的位置。 |
offset |
Point |
Point(0, 0) |
Tooltip 位置的可选偏移。 |
direction |
String |
'auto' |
打开 Tooltip 的方向。可能的值有:right 、left 、 top 、bottom 、center 、auto 。 auto 将之间进行动态切换 right 和 left 根据地图上的工具提示位置。 |
permanent |
Boolean |
false |
是永久打开 Tooltip 还是只在鼠标移动时打开。 |
sticky |
Boolean |
false |
如果为 true,Tooltip 将跟随鼠标移动,而不是固定在特征中心。 |
opacity |
Number |
0.9 |
Tooltip 容器透明度。 |
选项 | 类型 | 默认 | 描述 |
---|---|---|---|
interactive |
Boolean |
false |
如果为 true,popup/tooltip 将监听鼠标事件。 |
className |
String |
'' |
为 Overlayer 设置自定义 CSS 类名称。 |
选项 | 类型 | 默认 | 说明 |
---|---|---|---|
bubblingMouseEvents |
Boolean |
true |
当为 true 时,鼠标事件将在地图上触发相同的事件 (除非使用 L.DomEvent.stopPropagation )。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
contentupdate |
Event |
当 overlay 的内容被更新时触发。 |
事件 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户 click 或 tap 该图层时触发。 |
dblclick |
MouseEvent |
当用户 double-click 或 double-tap 该图层时触发。 |
mousedown |
MouseEvent |
当用户在该图层上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户在该图层上释放按下的鼠标按钮时触发。 |
mouseover |
MouseEvent |
鼠标进入该图层时触发。 |
mouseout |
MouseEvent |
当鼠标离开该图层时触发。 |
contextmenu |
MouseEvent |
当用户在图层上点击右键时触发,如果该事件有监听者,可以防止显示默认的浏览器上下文菜单。在手机上,当用户保持单次触摸一秒钟(也叫长按)时也会触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当与该图层绑定的 Popup 被打开时触发 |
popupclose |
PopupEvent |
当与该图层绑定的 Popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该图层的 Tooltip 被打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该图层的 Tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
openOn( |
this |
Adds the overlay to the map.
Alternative to |
close() |
this |
Closes the overlay.
Alternative to |
toggle( |
this |
Opens or closes the overlay bound to layer depending on its current state.
Argument may be omitted only for overlay bound to layer.
Alternative to |
getLatLng() |
LatLng |
Returns the geographical point of the overlay. |
setLatLng( |
this |
Sets the geographical point where the overlay will open. |
getContent() |
String|HTMLElement |
Returns the content of the overlay. |
setContent( |
this |
Sets the HTML content of the overlay. If a function is passed the source layer will be passed to the function.
The function should return a |
getElement() |
String|HTMLElement |
Returns the HTML container of the overlay. |
update() |
null |
Updates the overlay content, layout and position. Useful for updating the overlay after something inside changed, e.g. image loaded. |
isOpen() |
Boolean |
Returns |
bringToFront() |
this |
Brings this overlay in front of other overlays (in the same map pane). |
bringToBack() |
this |
Brings this overlay to the back of other overlays (in the same map pane). |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 描述 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
TileLayer
用于在地图上加载和显示瓦片图层。 请注意,大多数tile服务器都需要属性,你可以在 Layer
下进行设置。 扩展 GridLayer
使用示例
L.tileLayer('https://tile.openstreetmap.org/{z}/{x}/{y}.png?{foo}', {foo: 'bar', attribution: '© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors'}).addTo(map);
URL 模板
表现为以下方式:
'https://{s}.somedomain.com/blabla/{z}/{x}/{y}{r}.png'
{s}
是指可用的子域之一(按顺序使用,以帮助解决每个域的浏览器并行请求限制;子域值在选项中指定;默认为 a
, b
或 c
, 可以省略), {z}
— 缩放级别, {x}
和 {y}
— 瓦片坐标。 {r}
可以用来在URL中添加 "@2x" 以加载视网膜瓦片。
您可以在模板中使用自定义键,这些键将通过 TileLayer 选项进行 evaluated ,如下所示:
L.tileLayer('https://{s}.somedomain.com/{foo}/{z}/{x}/{y}.png', {foo: 'bar'});
Creation
Extension methods 扩展方法
构造函数 | 说明 |
---|---|
L.tilelayer( |
指定 URL 模板 和可选的 options 对象,实例化一个瓦片图层对象。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
minZoom |
Number |
0 |
此图层将显示的最小缩放级别(包括最小) |
maxZoom |
Number |
18 |
此图层将显示的最大缩放级别(包括最大) |
subdomains |
String|String[] |
'abc' |
瓦片服务的子域。 可以以一个字符串(其中每个字母是一个子域名)或字符串数组的形式传递。 |
errorTileUrl |
String |
'' |
显示瓦片图像的 URL,以代替加载失败的瓦片。 |
zoomOffset |
Number |
0 |
平铺 URL 中使用的缩放数字将与此值发生偏移。 |
tms |
Boolean |
false |
如果为 true ,则反转瓦片的 Y 轴编号 (为 TMS 服务启用此选项)。 |
zoomReverse |
Boolean |
false |
如果设置为 true,则图块 URL 中使用的缩放数字将被反转 (maxZoom - zoom 而不是 zoom ) |
detectRetina |
Boolean |
false |
如果 true 并且用户在视网膜显示器上,它将请求四个指定大小一半的瓦片和更大的缩放级别,以使用高分辨率。 |
crossOrigin |
Boolean|String |
false |
是否将 crossOrigin 属性添加到瓦片中。 如果提供了字符串,则所有瓦片的 crossOrigin 属性都将设置为提供的字符串。 如果您想访问平铺像素数据,则需要这样做。 有关有效的字符串值,请参阅 CORS 设置。 |
referrerPolicy |
Boolean|String |
false |
是否将referrerPolicy 属性添加到图块中。如果提供了字符串,则所有图块都将其 referrerPolicy 属性设置为提供的字符串。如果您的地图的渲染上下文具有严格的默认值,但您的图块提供者需要有效的引用者,则可能需要这样做(例如,验证 API 令牌)。 请参考 HTMLImageElement.referrerPolicy 了解有效的字符串值。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
tileSize |
Number|Point |
256 |
网格中瓦片的宽度和高度。如果宽度和高度相等,则使用当前数字,否则使用 L.point(width, height) 。 |
opacity |
Number |
1.0 |
瓦片的不透明度。可以在 createTile() 函数中使用。 |
updateWhenIdle |
Boolean |
(depends) |
在移动浏览器上默认为 true ,以避免过多的请求并保持流畅的导航。否则为 false 以便在平移过程中显示新瓦片,因为在桌面浏览器中很容易在 keepBuffer 选项之外平移。 |
updateWhenZooming |
Boolean |
true |
默认情况下,平滑缩放动画 (在 触摸缩放 或 flyTo() 期间) 将每隔一个整数的缩放级别更新网格图层。把这个选项设置为 false ,将只在平滑动画结束时更新网格图层。 |
updateInterval |
Number |
200 |
在平移时,瓦片将会在 updateInterval 毫秒内最多只更新一次。 |
zIndex |
Number |
1 |
瓦片图层的显性 zIndex。 |
bounds |
LatLngBounds |
undefined |
如果设置,瓦片将只在设置的 LatLngBounds 内被加载。 |
maxNativeZoom |
Number |
undefined |
瓦片源可用的最大缩放数。如果指定,所有缩放级别高于 maxNativeZoom 的图块将根据 maxNativeZoom 的缩放级别进行加载并自动缩放。 |
minNativeZoom |
Number |
undefined |
瓦片源可用的最小缩放数。如果指定,所有缩放级别小于 minNativeZoom 的图块将根据 minNativeZoom 的缩放级别进行加载并自动缩放。 |
noWrap |
Boolean |
false |
该图层是否被包裹在逆子午线周围。如果为 true ,则 GridLayer 将只在低缩放级别下显示一次。当 map CRS 不环绕时无效。可与 bounds 结合使用以防止请求超出 CRS 限制的图块。 |
pane |
String |
'tilePane' |
将添加到网格图层的Map pane |
className |
String |
'' |
为瓦片图层指定的自定义类名。默认是空的。 |
keepBuffer |
Number |
2 |
平移地图时,在卸载之前保留这么多行和列的图块。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
Extension methods 扩展方法
事件 | 数据 | 说明 |
---|---|---|
tileabort |
TileEvent |
当瓦片正在加载但现在不需要时触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
setUrl( |
this |
更新图层的 URL 模板并重绘它 (除非 |
createTile( |
HTMLElement |
仅在内部调用,覆盖 GridLayer 的 |
Extension methods 扩展方法
TileLayer
的图层可能会重新实现以下方法。方法 | 返回值 | 说明 |
---|---|---|
getTileUrl( |
String |
仅在内部调用,返回给定坐标的瓦片的 URL。 扩展 |
方法 | 返回值 | 说明 |
---|---|---|
bringToFront() |
this |
将瓦片图层置于所有瓦片图层的顶部。 |
bringToBack() |
this |
将瓦片图层置于所有瓦片图层的底部。 |
getContainer() |
HTMLElement |
返回包含该图层的瓦片的 HTML 元素。 |
setOpacity( |
this |
改变网格图层的 opacity 。 |
setZIndex( |
this |
改变网格图层的 zIndex 。 |
isLoading() |
Boolean |
如果网格图层中的任何瓦片没有完成加载,则返回 |
redraw() |
this |
清除该图层的所有瓦片,并再次请求它们。 |
getTileSize() |
Point |
将 tileSize option 规范化为一个点。由 |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
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"
});
Creation
构造函数 | 说明 |
---|---|
L.tileLayer.wms( |
给定 WMS 服务的基本 URL 和 WMS 参数/选项对象,实例化 WMS 瓦片图层对象。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
layers |
String |
'' |
(必需)要显示的 WMS 图层的逗号分隔列表。 |
styles |
String |
'' |
逗号分隔的 WMS 样式列表。 |
format |
String |
'image/jpeg' |
WMS 图像格式 (对具有透明度的图层使用 'image/png' for layers with transparency)。 |
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 并且用户在视网膜显示器上,它将请求四个指定大小一半的瓦片和更大的缩放级别,以使用高分辨率。 |
crossOrigin |
Boolean|String |
false |
是否将 crossOrigin 属性添加到瓦片中。 如果提供了字符串,则所有瓦片的 crossOrigin 属性都将设置为提供的字符串。 如果您想访问平铺像素数据,则需要这样做。 有关有效的字符串值,请参阅 CORS 设置。 |
referrerPolicy |
Boolean|String |
false |
是否将referrerPolicy 属性添加到图块中。如果提供了字符串,则所有图块都将其 referrerPolicy 属性设置为提供的字符串。如果您的地图的渲染上下文具有严格的默认值,但您的图块提供者需要有效的引用者,则可能需要这样做(例如,验证 API 令牌)。 请参考 HTMLImageElement.referrerPolicy 了解有效的字符串值。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
tileSize |
Number|Point |
256 |
网格中瓦片的宽度和高度。如果宽度和高度相等,则使用当前数字,否则使用 L.point(width, height) 。 |
opacity |
Number |
1.0 |
瓦片的不透明度。可以在 createTile() 函数中使用。 |
updateWhenIdle |
Boolean |
(depends) |
在移动浏览器上默认为 true ,以避免过多的请求并保持流畅的导航。否则为 false 以便在平移过程中显示新瓦片,因为在桌面浏览器中很容易在 keepBuffer 选项之外平移。 |
updateWhenZooming |
Boolean |
true |
默认情况下,平滑缩放动画 (在 触摸缩放 或 flyTo() 期间) 将每隔一个整数的缩放级别更新网格图层。把这个选项设置为 false ,将只在平滑动画结束时更新网格图层。 |
updateInterval |
Number |
200 |
在平移时,瓦片将会在 updateInterval 毫秒内最多只更新一次。 |
zIndex |
Number |
1 |
瓦片图层的显性 zIndex。 |
bounds |
LatLngBounds |
undefined |
如果设置,瓦片将只在设置的 LatLngBounds 内被加载。 |
maxNativeZoom |
Number |
undefined |
瓦片源可用的最大缩放数。如果指定,所有缩放级别高于 maxNativeZoom 的图块将根据 maxNativeZoom 的缩放级别进行加载并自动缩放。 |
minNativeZoom |
Number |
undefined |
瓦片源可用的最小缩放数。如果指定,所有缩放级别小于 minNativeZoom 的图块将根据 minNativeZoom 的缩放级别进行加载并自动缩放。 |
noWrap |
Boolean |
false |
该图层是否被包裹在逆子午线周围。如果为 true ,则 GridLayer 将只在低缩放级别下显示一次。当 map CRS 不环绕时无效。可与 bounds 结合使用以防止请求超出 CRS 限制的图块。 |
pane |
String |
'tilePane' |
将添加到网格图层的Map pane |
className |
String |
'' |
为瓦片图层指定的自定义类名。默认是空的。 |
keepBuffer |
Number |
2 |
平移地图时,在卸载之前保留这么多行和列的图块。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
tileabort |
TileEvent |
当瓦片正在加载但现在不需要时触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
setParams( |
this |
合并具有新参数的对象并重新请求当前屏幕上的图块 (除非 |
方法 | 返回值 | 说明 |
---|---|---|
setUrl( |
this |
更新图层的 URL 模板并重绘它 (除非 |
createTile( |
HTMLElement |
仅在内部调用,覆盖 GridLayer 的 |
方法 | 返回值 | 说明 |
---|---|---|
bringToFront() |
this |
将瓦片图层置于所有瓦片图层的顶部。 |
bringToBack() |
this |
将瓦片图层置于所有瓦片图层的底部。 |
getContainer() |
HTMLElement |
返回包含该图层的瓦片的 HTML 元素。 |
setOpacity( |
this |
改变网格图层的 opacity 。 |
setZIndex( |
this |
改变网格图层的 zIndex 。 |
isLoading() |
Boolean |
如果网格图层中的任何瓦片没有完成加载,则返回 |
redraw() |
this |
清除该图层的所有瓦片,并再次请求它们。 |
getTileSize() |
Point |
将 tileSize option 规范化为一个点。由 |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
ImageOverlay
用于在地图的特定边界上加载和显示单个图像。 继承自 Layer
。
使用示例
var imageUrl = 'https://maps.lib.utexas.edu/maps/historical/newark_nj_1922.jpg',
imageBounds = [[40.712216, -74.22655], [40.773941, -74.12544]];
L.imageOverlay(imageUrl, imageBounds).addTo(map);
Creation
构造函数 | 说明 |
---|---|
L.imageOverlay( |
指定图像的 URL 和它所关联的地理边界,实例化一个 image overlay 对象。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
opacity |
Number |
1.0 |
图像图层的不透明度。 |
alt |
String |
'' |
图像 alt 属性的文本内容(对于可访问性很有用)。 |
interactive |
Boolean |
false |
如果为 true ,当单击或悬停时,图像图层将发出 鼠标事件。 |
crossOrigin |
Boolean|String |
false |
是否将 crossOrigin 属性添加到图像中。 如果提供了字符串,则图像的 crossOrigin 属性将设置为提供的字符串。 如果要访问图像像素数据,则需要这样做。 有关有效的字符串值,请参阅 CORS 设置。 |
errorOverlayUrl |
String |
'' |
图像图层的 URL,以代替加载失败的图层。 |
zIndex |
Number |
1 |
图层的显式 zIndex 。 |
className |
String |
'' |
为图像指定一个自定义类名。默认是空的。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
bubblingMouseEvents |
Boolean |
true |
当为 true 时,此标记上的鼠标事件将触发地图上的相同事件(除非使用 L.DomEvent.stopPropagation )。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pane |
String |
'overlayPane' |
默认情况下,该图层将被添加到地图的 overlay pane(覆盖窗格)中。 覆盖该选项将导致该图层被默认放置在另一个窗格中。 |
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
load |
Event |
当 ImageOverlay 层图像加载完成时触发 |
error |
Event |
当 ImageOverlay 层图像加载失败时触发 |
事件 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户 click 或 tap 该图层时触发。 |
dblclick |
MouseEvent |
当用户 double-click 或 double-tap 该图层时触发。 |
mousedown |
MouseEvent |
当用户在该图层上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户在该图层上释放按下的鼠标按钮时触发。 |
mouseover |
MouseEvent |
鼠标进入该图层时触发。 |
mouseout |
MouseEvent |
当鼠标离开该图层时触发。 |
contextmenu |
MouseEvent |
当用户在图层上点击右键时触发,如果该事件有监听者,可以防止显示默认的浏览器上下文菜单。在手机上,当用户保持单次触摸一秒钟(也叫长按)时也会触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
setOpacity( |
this |
设置 overlay 的不透明度。 |
bringToFront() |
this |
将图层置于所有 overlay 图层的顶部。 |
bringToBack() |
this |
将图层置于所有 overlay 图层的底部。 |
setUrl( |
this |
更改图像的 URL。 |
setBounds( |
this |
更新当前 ImageOverlay 覆盖的边界 |
setZIndex( |
this |
更改 image overlay 的 zIndex 。 |
getBounds() |
LatLngBounds |
获取此 ImageOverlay 覆盖的边界 |
getElement() |
HTMLElement |
返回这个 overlay 所使用的 |
getCenter() |
LatLng |
返回 ImageOverlay 的中心坐标。 |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
VideoOverlay
用于在地图的特定范围内加载和显示视频播放器。 扩展 ImageOverlay
。
Video overlay 使用了 <video>
这个 HTML5 元素。
使用示例
var videoUrl = 'https://www.mapbox.com/bites/00188/patricia_nasa.webm',
videoBounds = [[ 32, -130], [ 13, -100]];
L.videoOverlay(videoUrl, videoBounds ).addTo(map);
Creation
构造函数 | 说明 |
---|---|
L.videoOverlay( |
指定视频的 URL(或 URL 数组,甚至视频元素)和它所关联的地理边界,实例化一个 image overlay 对象。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
autoplay |
Boolean |
true |
视频加载时是否自动开始播放。在某些浏览器上,仅适用于当 muted: true 时自动播放 |
loop |
Boolean |
true |
视频是否循环播放。 |
keepAspectRatio |
Boolean |
true |
视频投影后是否保存纵横比。 与支持的浏览器相关。 查看 浏览器兼容性 |
muted |
Boolean |
false |
加载时视频是否以静音模式启动。 |
playsInline |
Boolean |
true |
移动浏览器将在原处播放视频,而不是以全屏模式打开。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
opacity |
Number |
1.0 |
图像图层的不透明度。 |
alt |
String |
'' |
图像 alt 属性的文本内容(对于可访问性很有用)。 |
interactive |
Boolean |
false |
如果为 true ,当单击或悬停时,图像图层将发出 鼠标事件。 |
crossOrigin |
Boolean|String |
false |
是否将 crossOrigin 属性添加到图像中。 如果提供了字符串,则图像的 crossOrigin 属性将设置为提供的字符串。 如果要访问图像像素数据,则需要这样做。 有关有效的字符串值,请参阅 CORS 设置。 |
errorOverlayUrl |
String |
'' |
图像图层的 URL,以代替加载失败的图层。 |
zIndex |
Number |
1 |
图层的显式 zIndex 。 |
className |
String |
'' |
为图像指定一个自定义类名。默认是空的。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
bubblingMouseEvents |
Boolean |
true |
当为 true 时,此标记上的鼠标事件将触发地图上的相同事件(除非使用 L.DomEvent.stopPropagation )。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pane |
String |
'overlayPane' |
默认情况下,该图层将被添加到地图的 overlay pane(覆盖窗格)中。 覆盖该选项将导致该图层被默认放置在另一个窗格中。 |
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
load |
Event |
当视频完成加载第一帧时触发 |
事件 | 数据 | 说明 |
---|---|---|
error |
Event |
当 ImageOverlay 层无法加载其图像时触发 |
事件 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户 click 或 tap 该图层时触发。 |
dblclick |
MouseEvent |
当用户 double-click 或 double-tap 该图层时触发。 |
mousedown |
MouseEvent |
当用户在该图层上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户在该图层上释放按下的鼠标按钮时触发。 |
mouseover |
MouseEvent |
鼠标进入该图层时触发。 |
mouseout |
MouseEvent |
当鼠标离开该图层时触发。 |
contextmenu |
MouseEvent |
当用户在图层上点击右键时触发,如果该事件有监听者,可以防止显示默认的浏览器上下文菜单。在手机上,当用户保持单次触摸一秒钟(也叫长按)时也会触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
getElement() |
HTMLVideoElement |
返回此 overlay 使用的 |
方法 | 返回值 | 说明 |
---|---|---|
setOpacity( |
this |
设置 overlay 的不透明度。 |
bringToFront() |
this |
将图层置于所有 overlay 图层的顶部。 |
bringToBack() |
this |
将图层置于所有 overlay 图层的底部。 |
setUrl( |
this |
更改图像的 URL。 |
setBounds( |
this |
更新当前 ImageOverlay 覆盖的边界 |
setZIndex( |
this |
更改 image overlay 的 zIndex 。 |
getBounds() |
LatLngBounds |
获取此 ImageOverlay 覆盖的边界 |
getCenter() |
LatLng |
返回 ImageOverlay 的中心坐标。 |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
SVGOverlay
用于在地图的特定边界上加载、显示和提供对 SVG 文件的 DOM 访问。 扩展自 ImageOverlay
。
SVG overlay 使用了 <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);
Creation
构造函数 | 说明 |
---|---|
L.svgOverlay( |
给定一个 SVG 元素和它所关联的地理边界,实例化一个 image overlay 对象。 SVG 元素需要 viewBox 属性才能正确放大和缩小。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
opacity |
Number |
1.0 |
图像图层的不透明度。 |
alt |
String |
'' |
图像 alt 属性的文本内容(对于可访问性很有用)。 |
interactive |
Boolean |
false |
如果为 true ,当单击或悬停时,图像图层将发出 鼠标事件。 |
crossOrigin |
Boolean|String |
false |
是否将 crossOrigin 属性添加到图像中。 如果提供了字符串,则图像的 crossOrigin 属性将设置为提供的字符串。 如果要访问图像像素数据,则需要这样做。 有关有效的字符串值,请参阅 CORS 设置。 |
errorOverlayUrl |
String |
'' |
图像图层的 URL,以代替加载失败的图层。 |
zIndex |
Number |
1 |
图层的显式 zIndex 。 |
className |
String |
'' |
为图像指定一个自定义类名。默认是空的。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
bubblingMouseEvents |
Boolean |
true |
当为 true 时,此标记上的鼠标事件将触发地图上的相同事件(除非使用 L.DomEvent.stopPropagation )。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pane |
String |
'overlayPane' |
默认情况下,该图层将被添加到地图的 overlay pane(覆盖窗格)中。 覆盖该选项将导致该图层被默认放置在另一个窗格中。 |
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户 click 或 tap 该图层时触发。 |
dblclick |
MouseEvent |
当用户 double-click 或 double-tap 该图层时触发。 |
mousedown |
MouseEvent |
当用户在该图层上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户在该图层上释放按下的鼠标按钮时触发。 |
mouseover |
MouseEvent |
鼠标进入该图层时触发。 |
mouseout |
MouseEvent |
当鼠标离开该图层时触发。 |
contextmenu |
MouseEvent |
当用户在图层上点击右键时触发,如果该事件有监听者,可以防止显示默认的浏览器上下文菜单。在手机上,当用户保持单次触摸一秒钟(也叫长按)时也会触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
getElement() |
SVGElement |
返回此 overlay 使用的 |
方法 | 返回值 | 说明 |
---|---|---|
setOpacity( |
this |
设置 overlay 的不透明度。 |
bringToFront() |
this |
将图层置于所有 overlay 图层的顶部。 |
bringToBack() |
this |
将图层置于所有 overlay 图层的底部。 |
setUrl( |
this |
更改图像的 URL。 |
setBounds( |
this |
更新当前 ImageOverlay 覆盖的边界 |
setZIndex( |
this |
更改 image overlay 的 zIndex 。 |
getBounds() |
LatLngBounds |
获取此 ImageOverlay 覆盖的边界 |
getCenter() |
LatLng |
返回 ImageOverlay 的中心坐标。 |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
Path 路径
一个抽象的类,包含了矢量覆盖物 (Polygon(多边形), Polyline(折线), Circle(圆形))之间共享的选项和常量。请不要直接使用它。扩展自 Layer 图层
.
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
stroke |
Boolean |
true |
是否沿路径绘制边框。把它设置为false ,可以禁用多边形或圆形的边框。 |
color |
String |
'#3388ff' |
Stroke(描边)颜色 |
weight |
Number |
3 |
Stroke(描边)宽度,单位:像素 |
opacity |
Number |
1.0 |
Stroke(描边)的不透明度 |
lineCap |
String |
'round' |
定义描边 结束时使用的形状 的字符串。 |
lineJoin |
String |
'round' |
定义在描边 转角处使用的形状 的字符串。 |
dashArray |
String |
null |
一个定义描边的点画线的 图案范式的字符串。 在一些旧的浏览器中,对 Canvas -powered 图层不起作用。 |
dashOffset |
String |
null |
一个字符串,它定义了进入 dash 范式的距离,以 dash 开始。 在一些旧的浏览器中,对 Canvas -powered 图层不起作用。 |
fill |
Boolean |
depends |
是否对路径进行颜色填充。设置为 false 可以禁止对多边形或圆形的填充。 |
fillColor |
String |
* |
填充颜色。默认为 color 选项的值。 |
fillOpacity |
Number |
0.2 |
填充的不透明度。 |
fillRule |
String |
'evenodd' |
一个字符串,定义 形状的内部区域 是如何被确定的。 |
bubblingMouseEvents |
Boolean |
true |
当为 true 时,这个路径上的鼠标事件将在地图上触发相同的事件
(除非使用 L.DomEvent.stopPropagation )。 |
renderer |
Renderer |
|
在这个路径上使用这个特定的 Renderer(渲染器) 实例。 优先于地图的 default renderer(默认渲染器)。 |
className |
String |
null |
在一个元素上设置的自定义类名。仅适用于 SVG 渲染器。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
interactive |
Boolean |
true |
如果是 false , 该图层将不会发出鼠标事件,而是作为底层地图的一部分。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pane |
String |
'overlayPane' |
默认情况下,该图层将被添加到地图的 overlay pane(覆盖窗格)中。 覆盖该选项将导致该图层被默认放置在另一个窗格中。 |
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户 click 或 tap 该图层时触发。 |
dblclick |
MouseEvent |
当用户 double-click 或 double-tap 该图层时触发。 |
mousedown |
MouseEvent |
当用户在该图层上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户在该图层上释放按下的鼠标按钮时触发。 |
mouseover |
MouseEvent |
鼠标进入该图层时触发。 |
mouseout |
MouseEvent |
当鼠标离开该图层时触发。 |
contextmenu |
MouseEvent |
当用户在图层上点击右键时触发,如果该事件有监听者,可以防止显示默认的浏览器上下文菜单。在手机上,当用户保持单次触摸一秒钟(也叫长按)时也会触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
redraw() |
this |
重绘该图层。在你改变了路径使用的坐标后,有时会很有用。 |
setStyle( |
this |
根据 |
bringToFront() |
this |
将该图层置于所有路径图层的顶部。 |
bringToBack() |
this |
将该图层置于所有路径图层的底部。 |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
Polyline 折线
一个用于在地图上绘制折线覆盖物的类。扩展自 Path
。
使用示例
// 从LatLng点的数组中创建一条红色的折线
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(多段折线)
形状:
// 从一个 LatLng 点的数组中创建一条红色的多段折线
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]]
];
Creation
构造函数 | 说明 |
---|---|
L.polyline( |
给出一个地理点数组和可选的选项对象,实例化一个 Polyline 对象。你可以通过传递一个地理点的数组来创建一个具有多条独立线的折线对象 (MultiPolyline ) 。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
smoothFactor |
Number |
1.0 |
在每个缩放级别简化多段线的程度。更多意味着更好的性能和更平滑的外观,而更少意味着更精确的表现。 |
noClip |
Boolean |
false |
禁用折线剪裁。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
stroke |
Boolean |
true |
是否沿路径绘制边框。把它设置为false ,可以禁用多边形或圆形的边框。 |
color |
String |
'#3388ff' |
Stroke(描边)颜色 |
weight |
Number |
3 |
Stroke(描边)宽度,单位:像素 |
opacity |
Number |
1.0 |
Stroke(描边)的不透明度 |
lineCap |
String |
'round' |
定义描边 结束时使用的形状 的字符串。 |
lineJoin |
String |
'round' |
定义在描边 转角处使用的形状 的字符串。 |
dashArray |
String |
null |
一个定义描边的点画线的 图案范式的字符串。 在一些旧的浏览器中,对 Canvas -powered 图层不起作用。 |
dashOffset |
String |
null |
一个字符串,它定义了进入 dash 范式的距离,以 dash 开始。 在一些旧的浏览器中,对 Canvas -powered 图层不起作用。 |
fill |
Boolean |
depends |
是否对路径进行颜色填充。设置为 false 可以禁止对多边形或圆形的填充。 |
fillColor |
String |
* |
填充颜色。默认为 color 选项的值。 |
fillOpacity |
Number |
0.2 |
填充的不透明度。 |
fillRule |
String |
'evenodd' |
一个字符串,定义 形状的内部区域 是如何被确定的。 |
bubblingMouseEvents |
Boolean |
true |
当为 true 时,这个路径上的鼠标事件将在地图上触发相同的事件
(除非使用 L.DomEvent.stopPropagation )。 |
renderer |
Renderer |
|
在这个路径上使用这个特定的 Renderer(渲染器) 实例。 优先于地图的 default renderer(默认渲染器)。 |
className |
String |
null |
在一个元素上设置的自定义类名。仅适用于 SVG 渲染器。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
interactive |
Boolean |
true |
如果是 false , 该图层将不会发出鼠标事件,而是作为底层地图的一部分。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pane |
String |
'overlayPane' |
默认情况下,该图层将被添加到地图的 overlay pane(覆盖窗格)中。 覆盖该选项将导致该图层被默认放置在另一个窗格中。 |
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户 click 或 tap 该图层时触发。 |
dblclick |
MouseEvent |
当用户 double-click 或 double-tap 该图层时触发。 |
mousedown |
MouseEvent |
当用户在该图层上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户在该图层上释放按下的鼠标按钮时触发。 |
mouseover |
MouseEvent |
鼠标进入该图层时触发。 |
mouseout |
MouseEvent |
当鼠标离开该图层时触发。 |
contextmenu |
MouseEvent |
当用户在图层上点击右键时触发,如果该事件有监听者,可以防止显示默认的浏览器上下文菜单。在手机上,当用户保持单次触摸一秒钟(也叫长按)时也会触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
toGeoJSON( |
Object |
坐标值使用具有指定 |
getLatLngs() |
LatLng[] |
返回 path(路径)中的点的数组,如果是多段折线,则返回点的嵌套数组。 |
setLatLngs( |
this |
用给定的地理点数组替换多段折线中的所有点。 |
isEmpty() |
Boolean |
如果折线没有经纬度,则返回 |
closestLayerPoint( |
Point |
返回折线上最接近 |
getCenter() |
LatLng |
返回折线的中心坐标 (centroid) 。 |
getBounds() |
LatLngBounds |
返回路径的 |
addLatLng( |
this |
将一个给定的点添加到折线上。默认情况下,如果是多段折线,会添加到折线的第一个环上,但是可以通过传递一个特定的环作为LatLng数组来重写(你可以提前用 |
方法 | 返回值 | 说明 |
---|---|---|
redraw() |
this |
重绘该图层。在你改变了路径使用的坐标后,有时会很有用。 |
setStyle( |
this |
根据 |
bringToFront() |
this |
将该图层置于所有路径图层的顶部。 |
bringToBack() |
this |
将该图层置于所有路径图层的底部。 |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
Polygon 多边形
一个用于在地图上绘制多边形覆盖物的类。扩展自Polyline
。
请注意,您在创建多边形时传递的最后一个点不应该和第一个相同 - 最好过滤掉这些点。
使用示例
// 从一个 LatLng 点的数组中创建一个红色的多边形
var latlngs = [[37, -109.05],[41, -109.03],[41, -102.05],[37, -102.04]];
var polygon = L.polygon(latlngs, {color: 'red'}).addTo(map);
// 将地图放大到多边形的位置
map.fitBounds(polygon.getBounds());
你也可以传递一个latlngs的数组,第一个数组代表外部形状,其他数组代表外部形状中的孔:
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]]
]
];
Creation
构造函数 | 说明 |
---|---|
L.polygon( |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
smoothFactor |
Number |
1.0 |
在每个缩放级别简化多段线的程度。更多意味着更好的性能和更平滑的外观,而更少意味着更精确的表现。 |
noClip |
Boolean |
false |
禁用折线剪裁。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
stroke |
Boolean |
true |
是否沿路径绘制边框。把它设置为false ,可以禁用多边形或圆形的边框。 |
color |
String |
'#3388ff' |
Stroke(描边)颜色 |
weight |
Number |
3 |
Stroke(描边)宽度,单位:像素 |
opacity |
Number |
1.0 |
Stroke(描边)的不透明度 |
lineCap |
String |
'round' |
定义描边 结束时使用的形状 的字符串。 |
lineJoin |
String |
'round' |
定义在描边 转角处使用的形状 的字符串。 |
dashArray |
String |
null |
一个定义描边的点画线的 图案范式的字符串。 在一些旧的浏览器中,对 Canvas -powered 图层不起作用。 |
dashOffset |
String |
null |
一个字符串,它定义了进入 dash 范式的距离,以 dash 开始。 在一些旧的浏览器中,对 Canvas -powered 图层不起作用。 |
fill |
Boolean |
depends |
是否对路径进行颜色填充。设置为 false 可以禁止对多边形或圆形的填充。 |
fillColor |
String |
* |
填充颜色。默认为 color 选项的值。 |
fillOpacity |
Number |
0.2 |
填充的不透明度。 |
fillRule |
String |
'evenodd' |
一个字符串,定义 形状的内部区域 是如何被确定的。 |
bubblingMouseEvents |
Boolean |
true |
当为 true 时,这个路径上的鼠标事件将在地图上触发相同的事件
(除非使用 L.DomEvent.stopPropagation )。 |
renderer |
Renderer |
|
在这个路径上使用这个特定的 Renderer(渲染器) 实例。 优先于地图的 default renderer(默认渲染器)。 |
className |
String |
null |
在一个元素上设置的自定义类名。仅适用于 SVG 渲染器。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
interactive |
Boolean |
true |
如果是 false , 该图层将不会发出鼠标事件,而是作为底层地图的一部分。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pane |
String |
'overlayPane' |
默认情况下,该图层将被添加到地图的 overlay pane(覆盖窗格)中。 覆盖该选项将导致该图层被默认放置在另一个窗格中。 |
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户 click 或 tap 该图层时触发。 |
dblclick |
MouseEvent |
当用户 double-click 或 double-tap 该图层时触发。 |
mousedown |
MouseEvent |
当用户在该图层上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户在该图层上释放按下的鼠标按钮时触发。 |
mouseover |
MouseEvent |
鼠标进入该图层时触发。 |
mouseout |
MouseEvent |
当鼠标离开该图层时触发。 |
contextmenu |
MouseEvent |
当用户在图层上点击右键时触发,如果该事件有监听者,可以防止显示默认的浏览器上下文菜单。在手机上,当用户保持单次触摸一秒钟(也叫长按)时也会触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
toGeoJSON( |
Object |
坐标值使用具有指定 |
方法 | 返回值 | 说明 |
---|---|---|
getLatLngs() |
LatLng[] |
返回 path(路径)中的点的数组,如果是多段折线,则返回点的嵌套数组。 |
setLatLngs( |
this |
用给定的地理点数组替换多段折线中的所有点。 |
isEmpty() |
Boolean |
如果折线没有经纬度,则返回 |
closestLayerPoint( |
Point |
返回折线上最接近 |
getCenter() |
LatLng |
返回折线的中心坐标 (centroid) 。 |
getBounds() |
LatLngBounds |
返回路径的 |
addLatLng( |
this |
将一个给定的点添加到折线上。默认情况下,如果是多段折线,会添加到折线的第一个环上,但是可以通过传递一个特定的环作为LatLng数组来重写(你可以提前用 |
方法 | 返回值 | 说明 |
---|---|---|
redraw() |
this |
重绘该图层。在你改变了路径使用的坐标后,有时会很有用。 |
setStyle( |
this |
根据 |
bringToFront() |
this |
将该图层置于所有路径图层的顶部。 |
bringToBack() |
this |
将该图层置于所有路径图层的底部。 |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
Rectangle 矩形
一个用于在地图上绘制矩形覆盖物的类。扩展自 Polygon
。
使用示例
// 定义矩形的地理边界
var bounds = [[54.559322, -5.767822], [56.1210604, -3.021240]];
// 创建一个橙色的矩形
L.rectangle(bounds, {color: "#ff7800", weight: 1}).addTo(map);
// 将地图放大到矩形的边界上
map.fitBounds(bounds);
Creation
构造函数 | 说明 |
---|---|
L.rectangle( |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
smoothFactor |
Number |
1.0 |
在每个缩放级别简化多段线的程度。更多意味着更好的性能和更平滑的外观,而更少意味着更精确的表现。 |
noClip |
Boolean |
false |
禁用折线剪裁。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
stroke |
Boolean |
true |
是否沿路径绘制边框。把它设置为false ,可以禁用多边形或圆形的边框。 |
color |
String |
'#3388ff' |
Stroke(描边)颜色 |
weight |
Number |
3 |
Stroke(描边)宽度,单位:像素 |
opacity |
Number |
1.0 |
Stroke(描边)的不透明度 |
lineCap |
String |
'round' |
定义描边 结束时使用的形状 的字符串。 |
lineJoin |
String |
'round' |
定义在描边 转角处使用的形状 的字符串。 |
dashArray |
String |
null |
一个定义描边的点画线的 图案范式的字符串。 在一些旧的浏览器中,对 Canvas -powered 图层不起作用。 |
dashOffset |
String |
null |
一个字符串,它定义了进入 dash 范式的距离,以 dash 开始。 在一些旧的浏览器中,对 Canvas -powered 图层不起作用。 |
fill |
Boolean |
depends |
是否对路径进行颜色填充。设置为 false 可以禁止对多边形或圆形的填充。 |
fillColor |
String |
* |
填充颜色。默认为 color 选项的值。 |
fillOpacity |
Number |
0.2 |
填充的不透明度。 |
fillRule |
String |
'evenodd' |
一个字符串,定义 形状的内部区域 是如何被确定的。 |
bubblingMouseEvents |
Boolean |
true |
当为 true 时,这个路径上的鼠标事件将在地图上触发相同的事件
(除非使用 L.DomEvent.stopPropagation )。 |
renderer |
Renderer |
|
在这个路径上使用这个特定的 Renderer(渲染器) 实例。 优先于地图的 default renderer(默认渲染器)。 |
className |
String |
null |
在一个元素上设置的自定义类名。仅适用于 SVG 渲染器。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
interactive |
Boolean |
true |
如果是 false , 该图层将不会发出鼠标事件,而是作为底层地图的一部分。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pane |
String |
'overlayPane' |
默认情况下,该图层将被添加到地图的 overlay pane(覆盖窗格)中。 覆盖该选项将导致该图层被默认放置在另一个窗格中。 |
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户 click 或 tap 该图层时触发。 |
dblclick |
MouseEvent |
当用户 double-click 或 double-tap 该图层时触发。 |
mousedown |
MouseEvent |
当用户在该图层上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户在该图层上释放按下的鼠标按钮时触发。 |
mouseover |
MouseEvent |
鼠标进入该图层时触发。 |
mouseout |
MouseEvent |
当鼠标离开该图层时触发。 |
contextmenu |
MouseEvent |
当用户在图层上点击右键时触发,如果该事件有监听者,可以防止显示默认的浏览器上下文菜单。在手机上,当用户保持单次触摸一秒钟(也叫长按)时也会触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
setBounds( |
this |
用传递的边界重绘矩形。 |
方法 | 返回值 | 说明 |
---|---|---|
getLatLngs() |
LatLng[] |
返回 path(路径)中的点的数组,如果是多段折线,则返回点的嵌套数组。 |
setLatLngs( |
this |
用给定的地理点数组替换多段折线中的所有点。 |
isEmpty() |
Boolean |
如果折线没有经纬度,则返回 |
closestLayerPoint( |
Point |
返回折线上最接近 |
getCenter() |
LatLng |
返回折线的中心坐标 (centroid) 。 |
getBounds() |
LatLngBounds |
返回路径的 |
addLatLng( |
this |
将一个给定的点添加到折线上。默认情况下,如果是多段折线,会添加到折线的第一个环上,但是可以通过传递一个特定的环作为LatLng数组来重写(你可以提前用 |
方法 | 返回值 | 说明 |
---|---|---|
redraw() |
this |
重绘该图层。在你改变了路径使用的坐标后,有时会很有用。 |
setStyle( |
this |
根据 |
bringToFront() |
this |
将该图层置于所有路径图层的顶部。 |
bringToBack() |
this |
将该图层置于所有路径图层的底部。 |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
Circle 圆形
一个用于在地图上绘制圆形覆盖物的类。扩展自 CircleMarker
。
这是一个近似值,在接近两极时开始与真实的圆相背离(由于投影失真)。
使用示例
L.circle([50.5, 30.5], {radius: 200}).addTo(map);
Creation
构造函数 | 说明 |
---|---|
L.circle( |
给出一个地理点和一个包含圆半径的选项对象,实例化一个 circle 对象。 |
L.circle( |
为了与 0.7.x 代码兼容,实例化 circle 的方法已经过时了。请不要在新的应用程序或插件中使用。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
radius |
Number |
|
圆的半径,以米为单位。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
stroke |
Boolean |
true |
是否沿路径绘制边框。把它设置为false ,可以禁用多边形或圆形的边框。 |
color |
String |
'#3388ff' |
Stroke(描边)颜色 |
weight |
Number |
3 |
Stroke(描边)宽度,单位:像素 |
opacity |
Number |
1.0 |
Stroke(描边)的不透明度 |
lineCap |
String |
'round' |
定义描边 结束时使用的形状 的字符串。 |
lineJoin |
String |
'round' |
定义在描边 转角处使用的形状 的字符串。 |
dashArray |
String |
null |
一个定义描边的点画线的 图案范式的字符串。 在一些旧的浏览器中,对 Canvas -powered 图层不起作用。 |
dashOffset |
String |
null |
一个字符串,它定义了进入 dash 范式的距离,以 dash 开始。 在一些旧的浏览器中,对 Canvas -powered 图层不起作用。 |
fill |
Boolean |
depends |
是否对路径进行颜色填充。设置为 false 可以禁止对多边形或圆形的填充。 |
fillColor |
String |
* |
填充颜色。默认为 color 选项的值。 |
fillOpacity |
Number |
0.2 |
填充的不透明度。 |
fillRule |
String |
'evenodd' |
一个字符串,定义 形状的内部区域 是如何被确定的。 |
bubblingMouseEvents |
Boolean |
true |
当为 true 时,这个路径上的鼠标事件将在地图上触发相同的事件
(除非使用 L.DomEvent.stopPropagation )。 |
renderer |
Renderer |
|
在这个路径上使用这个特定的 Renderer(渲染器) 实例。 优先于地图的 default renderer(默认渲染器)。 |
className |
String |
null |
在一个元素上设置的自定义类名。仅适用于 SVG 渲染器。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
interactive |
Boolean |
true |
如果是 false , 该图层将不会发出鼠标事件,而是作为底层地图的一部分。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pane |
String |
'overlayPane' |
默认情况下,该图层将被添加到地图的 overlay pane(覆盖窗格)中。 覆盖该选项将导致该图层被默认放置在另一个窗格中。 |
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户 click 或 tap 该图层时触发。 |
dblclick |
MouseEvent |
当用户 double-click 或 double-tap 该图层时触发。 |
mousedown |
MouseEvent |
当用户在该图层上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户在该图层上释放按下的鼠标按钮时触发。 |
mouseover |
MouseEvent |
鼠标进入该图层时触发。 |
mouseout |
MouseEvent |
当鼠标离开该图层时触发。 |
contextmenu |
MouseEvent |
当用户在图层上点击右键时触发,如果该事件有监听者,可以防止显示默认的浏览器上下文菜单。在手机上,当用户保持单次触摸一秒钟(也叫长按)时也会触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
setRadius( |
this |
设置一个圆的半径。单位是米。 |
getRadius() |
Number |
返回一个圆的当前半径。单位是米。 |
getBounds() |
LatLngBounds |
返回路径的 |
方法 | 返回值 | 说明 |
---|---|---|
redraw() |
this |
重绘该图层。在你改变了路径使用的坐标后,有时会很有用。 |
setStyle( |
this |
根据 |
bringToFront() |
this |
将该图层置于所有路径图层的顶部。 |
bringToBack() |
this |
将该图层置于所有路径图层的底部。 |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
CircleMarker 圆形标记
一个固定大小的圆,半径以像素指定。扩展自 Path
。
Creation
构造函数 | 说明 |
---|---|
L.circleMarker( |
给出一个地理点和一个可选的选项对象,实例化一个圆形标记对象。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
radius |
Number |
10 |
圆形标记的半径,单位是像素 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
stroke |
Boolean |
true |
是否沿路径绘制边框。把它设置为false ,可以禁用多边形或圆形的边框。 |
color |
String |
'#3388ff' |
Stroke(描边)颜色 |
weight |
Number |
3 |
Stroke(描边)宽度,单位:像素 |
opacity |
Number |
1.0 |
Stroke(描边)的不透明度 |
lineCap |
String |
'round' |
定义描边 结束时使用的形状 的字符串。 |
lineJoin |
String |
'round' |
定义在描边 转角处使用的形状 的字符串。 |
dashArray |
String |
null |
一个定义描边的点画线的 图案范式的字符串。 在一些旧的浏览器中,对 Canvas -powered 图层不起作用。 |
dashOffset |
String |
null |
一个字符串,它定义了进入 dash 范式的距离,以 dash 开始。 在一些旧的浏览器中,对 Canvas -powered 图层不起作用。 |
fill |
Boolean |
depends |
是否对路径进行颜色填充。设置为 false 可以禁止对多边形或圆形的填充。 |
fillColor |
String |
* |
填充颜色。默认为 color 选项的值。 |
fillOpacity |
Number |
0.2 |
填充的不透明度。 |
fillRule |
String |
'evenodd' |
一个字符串,定义 形状的内部区域 是如何被确定的。 |
bubblingMouseEvents |
Boolean |
true |
当为 true 时,这个路径上的鼠标事件将在地图上触发相同的事件
(除非使用 L.DomEvent.stopPropagation )。 |
renderer |
Renderer |
|
在这个路径上使用这个特定的 Renderer(渲染器) 实例。 优先于地图的 default renderer(默认渲染器)。 |
className |
String |
null |
在一个元素上设置的自定义类名。仅适用于 SVG 渲染器。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
interactive |
Boolean |
true |
如果是 false , 该图层将不会发出鼠标事件,而是作为底层地图的一部分。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pane |
String |
'overlayPane' |
默认情况下,该图层将被添加到地图的 overlay pane(覆盖窗格)中。 覆盖该选项将导致该图层被默认放置在另一个窗格中。 |
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
move |
Event |
当标记通过 setLatLng 移动时触发该事件,并且旧坐标和新坐标会作为 oldLatLng 、latlng 包含在事件参数中。 |
事件 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户 click 或 tap 该图层时触发。 |
dblclick |
MouseEvent |
当用户 double-click 或 double-tap 该图层时触发。 |
mousedown |
MouseEvent |
当用户在该图层上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户在该图层上释放按下的鼠标按钮时触发。 |
mouseover |
MouseEvent |
鼠标进入该图层时触发。 |
mouseout |
MouseEvent |
当鼠标离开该图层时触发。 |
contextmenu |
MouseEvent |
当用户在图层上点击右键时触发,如果该事件有监听者,可以防止显示默认的浏览器上下文菜单。在手机上,当用户保持单次触摸一秒钟(也叫长按)时也会触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
toGeoJSON( |
Object |
坐标值使用具有指定 |
setLatLng( |
this |
将 CircleMarker 的位置设置为新位置。 |
getLatLng() |
LatLng |
返回 CircleMarker 的当前地理位置。 |
setRadius( |
this |
设置圆形标记的半径。单位是像素。 |
getRadius() |
Number |
返回圆的当前半径 |
方法 | 返回值 | 说明 |
---|---|---|
redraw() |
this |
重绘该图层。在你改变了路径使用的坐标后,有时会很有用。 |
setStyle( |
this |
根据 |
bringToFront() |
this |
将该图层置于所有路径图层的顶部。 |
bringToBack() |
this |
将该图层置于所有路径图层的底部。 |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
SVG 矢量渲染器
VML 在2012年被废弃,这意味着 VML 功能的存在只是为了向后兼容旧版本的 Internet Explorer。
由于 技术限制, SVG并不是 并非所有的网络浏览器都可以使用,特别是 Android 2.x 和 3.x 。
虽然IE7和IE8上没有SVG,但这些浏览器都支持 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 } );
Creation
构造函数 | 说明 |
---|---|
L.svg( |
用给定的选项创建一个SVG渲染器。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
padding |
Number |
0.1 |
在地图视图周围填充多少剪切区域(相对于其大小),例如0.1是在每个方向填充地图视图的10% |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pane |
String |
'overlayPane' |
默认情况下,该图层将被添加到地图的 overlay pane(覆盖窗格)中。 覆盖该选项将导致该图层被默认放置在另一个窗格中。 |
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
update |
Event |
当渲染器更新边界、中心和缩放时触发,例如地图移动时 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
Functions
Function | 返回值 | 说明 |
---|---|---|
create( |
SVGElement |
返回一个 SVGElement的实例,与传递的类名对应。例如,使用 'line' 将返回一个 SVGLineElement的实例。 |
pointsToPath( |
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 } );
Creation
构造函数 | 说明 |
---|---|
L.canvas( |
用给定的选项创建一个Canvas渲染器。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
tolerance |
Number |
0 |
地图上的 path/object 的点击区域要增加多少 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
padding |
Number |
0.1 |
在地图视图周围填充多少剪切区域(相对于其大小),例如0.1是在每个方向填充地图视图的10% |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pane |
String |
'overlayPane' |
默认情况下,该图层将被添加到地图的 overlay pane(覆盖窗格)中。 覆盖该选项将导致该图层被默认放置在另一个窗格中。 |
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
update |
Event |
当渲染器更新边界、中心和缩放时触发,例如地图移动时 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
LayerGroup 图层组
用于将几个图层分组并作为一个整体处理。如果你把它添加到地图上,任何从该组中添加或删除的图层也会在地图上添加/删除。扩展 Layer
。
使用示例
L.layerGroup([marker1, marker2])
.addLayer(polyline)
.addTo(map);
Creation
构造函数 | 说明 |
---|---|
L.layerGroup( |
创建一个图层组,可以选择给定一个初始图层组和一个 options 对象。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
interactive |
Boolean |
true |
如果是 false , 该图层将不会发出鼠标事件,而是作为底层地图的一部分。 |
bubblingMouseEvents |
Boolean |
true |
当为 true 时,此标记上的鼠标事件将触发地图上的相同事件(除非使用 L.DomEvent.stopPropagation )。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pane |
String |
'overlayPane' |
默认情况下,该图层将被添加到地图的 overlay pane(覆盖窗格)中。 覆盖该选项将导致该图层被默认放置在另一个窗格中。 |
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户 click 或 tap 该图层时触发。 |
dblclick |
MouseEvent |
当用户 double-click 或 double-tap 该图层时触发。 |
mousedown |
MouseEvent |
当用户在该图层上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户在该图层上释放按下的鼠标按钮时触发。 |
mouseover |
MouseEvent |
鼠标进入该图层时触发。 |
mouseout |
MouseEvent |
当鼠标离开该图层时触发。 |
contextmenu |
MouseEvent |
当用户在图层上点击右键时触发,如果该事件有监听者,可以防止显示默认的浏览器上下文菜单。在手机上,当用户保持单次触摸一秒钟(也叫长按)时也会触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
toGeoJSON( |
Object |
坐标值使用具有指定 |
addLayer( |
this |
将给定的图层添加到组中。 |
removeLayer( |
this |
将给定的图层从组中移除。 |
removeLayer( |
this |
将具有给定内部ID的图层从组中移除。 |
hasLayer( |
Boolean |
如果给定的图层当前被添加到组中,则返回 |
hasLayer( |
Boolean |
如果给定的内部 ID 当前被添加到组中,则返回 |
clearLayers() |
this |
移除组中的所有图层。 |
invoke( |
this |
对该组中包含的每个图层调用 |
eachLayer( |
this |
遍历该组的各图层,可以选择指定迭代器函数的上下文。
|
getLayer( |
Layer |
返回具有给定内部 ID 的图层。 |
getLayers() |
Layer[] |
返回所有添加到组中的图层的数组。 |
setZIndex( |
this |
对包含在该组中的每个图层调用 |
getLayerId( |
Number |
返回一个图层的内部 ID |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
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);
Creation
构造函数 | 说明 |
---|---|
L.featureGroup( |
创建一个 feature group,可选择给定一组初始图层和一个 options 对象。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
interactive |
Boolean |
true |
如果是 false , 该图层将不会发出鼠标事件,而是作为底层地图的一部分。 |
bubblingMouseEvents |
Boolean |
true |
当为 true 时,此标记上的鼠标事件将触发地图上的相同事件(除非使用 L.DomEvent.stopPropagation )。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pane |
String |
'overlayPane' |
默认情况下,该图层将被添加到地图的 overlay pane(覆盖窗格)中。 覆盖该选项将导致该图层被默认放置在另一个窗格中。 |
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
layeradd |
LayerEvent |
当一个图层被添加到该 FeatureGroup 时触发。 |
layerremove |
LayerEvent |
当一个图层被从该 FeatureGroup 中移除时触发。 |
事件 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户 click 或 tap 该图层时触发。 |
dblclick |
MouseEvent |
当用户 double-click 或 double-tap 该图层时触发。 |
mousedown |
MouseEvent |
当用户在该图层上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户在该图层上释放按下的鼠标按钮时触发。 |
mouseover |
MouseEvent |
鼠标进入该图层时触发。 |
mouseout |
MouseEvent |
当鼠标离开该图层时触发。 |
contextmenu |
MouseEvent |
当用户在图层上点击右键时触发,如果该事件有监听者,可以防止显示默认的浏览器上下文菜单。在手机上,当用户保持单次触摸一秒钟(也叫长按)时也会触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
setStyle( |
this |
为组中有 |
bringToFront() |
this |
将图层组置于所有其他图层的顶部。 |
bringToBack() |
this |
将图层组置于所有其他图层的底部。 |
getBounds() |
LatLngBounds |
返回要素组的 LatLngBounds(由其子节点的边界和坐标创建)。 |
方法 | 返回值 | 说明 |
---|---|---|
toGeoJSON( |
Object |
坐标值使用具有指定 |
addLayer( |
this |
将给定的图层添加到组中。 |
removeLayer( |
this |
将给定的图层从组中移除。 |
removeLayer( |
this |
将具有给定内部ID的图层从组中移除。 |
hasLayer( |
Boolean |
如果给定的图层当前被添加到组中,则返回 |
hasLayer( |
Boolean |
如果给定的内部 ID 当前被添加到组中,则返回 |
clearLayers() |
this |
移除组中的所有图层。 |
invoke( |
this |
对该组中包含的每个图层调用 |
eachLayer( |
this |
遍历该组的各图层,可以选择指定迭代器函数的上下文。
|
getLayer( |
Layer |
返回具有给定内部 ID 的图层。 |
getLayers() |
Layer[] |
返回所有添加到组中的图层的数组。 |
setZIndex( |
this |
对包含在该组中的每个图层调用 |
getLayerId( |
Number |
返回一个图层的内部 ID |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
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);
Creation
构造函数 | 说明 |
---|---|
L.geoJSON( |
创建一个GeoJSON图层。可选择接受一个在地图上显示的
GeoJSON 格式 的对象
(你也可以在以后用 addData 方法添加它) 和一个 options 对象。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pointToLayer |
Function |
* |
一个定义 GeoJSON 点如何产生 Leaflet 图层的 Function 。当数据被添加时,它被内部调用,传递GeoJSON点的特征和它的 LatLng 。默认是生成一个默认的 Marker :
|
style |
Function |
* |
一个定义GeoJSON线条和多边形造型的 Path options 函数 ,在添加数据时内部调用。默认值是不覆盖任何默认值:
|
onEachFeature |
Function |
* |
一个 Function ,在每个创建的 Feature 被创建和样式化后,将被调用一次。对于将事件和弹出窗口附加到要素上很有用。默认情况下,对新创建的图层不做任何处理:
|
filter |
Function |
* |
一个 Function ,用于决定是否包括一个要素。默认是包括所有要素:
注意:动态改变 |
coordsToLatLng |
Function |
* |
一个用于将GeoJSON坐标转换为LatLngs的 Function 。默认是 coordsToLatLng 静态方法。 |
markersInheritOptions |
Boolean |
false |
"Point" 类型要素的默认标记是否继承于组选项。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
interactive |
Boolean |
true |
如果是 false , 该图层将不会发出鼠标事件,而是作为底层地图的一部分。 |
bubblingMouseEvents |
Boolean |
true |
当为 true 时,此标记上的鼠标事件将触发地图上的相同事件(除非使用 L.DomEvent.stopPropagation )。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pane |
String |
'overlayPane' |
默认情况下,该图层将被添加到地图的 overlay pane(覆盖窗格)中。 覆盖该选项将导致该图层被默认放置在另一个窗格中。 |
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
layeradd |
LayerEvent |
当一个图层被添加到该 FeatureGroup 时触发。 |
layerremove |
LayerEvent |
当一个图层被从该 FeatureGroup 中移除时触发。 |
事件 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户 click 或 tap 该图层时触发。 |
dblclick |
MouseEvent |
当用户 double-click 或 double-tap 该图层时触发。 |
mousedown |
MouseEvent |
当用户在该图层上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户在该图层上释放按下的鼠标按钮时触发。 |
mouseover |
MouseEvent |
鼠标进入该图层时触发。 |
mouseout |
MouseEvent |
当鼠标离开该图层时触发。 |
contextmenu |
MouseEvent |
当用户在图层上点击右键时触发,如果该事件有监听者,可以防止显示默认的浏览器上下文菜单。在手机上,当用户保持单次触摸一秒钟(也叫长按)时也会触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
addData(data) |
this |
将一个 GeoJSON 对象添加到图层中。 |
resetStyle(layer?) |
this |
将给定的矢量图层的样式重置为原始的 GeoJSON 样式,对于在悬停事件后重置样式很有用。如果省略了 |
setStyle(style) |
this |
用给定的样式函数改变 GeoJSON 矢量图层的样式。 |
方法 | 返回值 | 说明 |
---|---|---|
bringToFront() |
this |
将图层组置于所有其他图层的顶部。 |
bringToBack() |
this |
将图层组置于所有其他图层的底部。 |
getBounds() |
LatLngBounds |
返回要素组的 LatLngBounds(由其子节点的边界和坐标创建)。 |
方法 | 返回值 | 说明 |
---|---|---|
toGeoJSON( |
Object |
坐标值使用具有指定 |
addLayer( |
this |
将给定的图层添加到组中。 |
removeLayer( |
this |
将给定的图层从组中移除。 |
removeLayer( |
this |
将具有给定内部ID的图层从组中移除。 |
hasLayer( |
Boolean |
如果给定的图层当前被添加到组中,则返回 |
hasLayer( |
Boolean |
如果给定的内部 ID 当前被添加到组中,则返回 |
clearLayers() |
this |
移除组中的所有图层。 |
invoke( |
this |
对该组中包含的每个图层调用 |
eachLayer( |
this |
遍历该组的各图层,可以选择指定迭代器函数的上下文。
|
getLayer( |
Layer |
返回具有给定内部 ID 的图层。 |
getLayers() |
Layer[] |
返回所有添加到组中的图层的数组。 |
setZIndex( |
this |
对包含在该组中的每个图层调用 |
getLayerId( |
Number |
返回一个图层的内部 ID |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
Functions
Function | 返回值 | 说明 |
---|---|---|
geometryToLayer( |
Layer |
从一个给定的GeoJSON要素创建一个 Layer 。如果提供选项,可以使用自定义的
pointToLayer 和/或 coordsToLatLng
函数。 |
coordsToLatLng( |
LatLng |
从GeoJSON中用于点的2个数字(经度、纬度)或3个数字(经度、纬度、海拔)阵列中创建一个 LatLng 对象。 |
coordsToLatLngs( |
Array |
从GeoJSON坐标数组中创建一个 LatLng 的多维数组。
levelsDeep 指定嵌套级别(0用于点的数组,1用于点的数组,等等,默认为0)。可以使用一个自定义的 coordsToLatLng 函数。 |
latLngToCoords( |
Array |
与 coordsToLatLng 相反。坐标值使用 formatNum 函数进行四舍五入。 |
latLngsToCoords( |
Array |
coordsToLatLngs 的反向
closed ,决定是否应该将第一个点追加到数组的末尾以 close 该要素,仅在 levelsDeep 为 0 时使用,默认为 false 。坐标值使用 formatNum 函数进行四舍五入。 |
asFeature( |
Object |
将 GeoJSON 的 geometries/features 规范化为 GeoJSON features。 |
GridLayer 网格图层
用于处理 HTML 元素的平铺网格的通用类。它是所有瓦片图层的基类,取代了 TileLayer.Canvas
。GridLayer 可以被扩展来创建 HTML 元素的平铺网格,如 <canvas>
, <img>
or <div>
。GridLayer 将为你处理这些 DOM 元素的创建和动画。
使用示例
同步使用
要创建一个自定义图层,请扩展GridLayer并实现 createTile()
方法,它将被传递给一个 Point
对象,该对象具有 x
, y
, 和 z
(缩放级别)坐标,以绘制你的图层。
var CanvasLayer = L.GridLayer.extend({
createTile: function(coords){
// 创建一个用于绘图的 <canvas> 元素
var tile = L.DomUtil.create('canvas', 'leaflet-tile');
// 根据选项设置瓦片的宽度和高度
var size = this.getTileSize();
tile.width = size.x;
tile.height = size.y;
// 获得一个 canvas 上下文,并使用 coords.x、coords.y 和 coords.z 在上面画东西
var ctx = tile.getContext('2d');
// 返回瓦片,以便在屏幕上呈现
return tile;
}
});
异步使用
瓦片的创建也可以是异步的,这在使用第三方绘图库时很有用。一旦瓦片绘制完成,它可以被传递给 done()
回调。
var CanvasLayer = L.GridLayer.extend({
createTile: function(coords, done){
var error;
// 创建一个用于绘图的 <canvas> 元素
var tile = L.DomUtil.create('canvas', 'leaflet-tile');
// 根据选项设置瓦片的宽度和高度
var size = this.getTileSize();
tile.width = size.x;
tile.height = size.y;
// 异步地绘制一些东西,并将瓦片传递给 done() 回调
setTimeout(function() {
done(error, tile);
}, 1000);
return tile;
}
});
Creation
构造函数 | 说明 |
---|---|
L.gridLayer( |
用提供的选项创建一个新的 GridLayer 实例。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
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 将只在低缩放级别下显示一次。当 map CRS 不环绕时无效。可与 bounds 结合使用以防止请求超出 CRS 限制的图块。 |
pane |
String |
'tilePane' |
将添加到网格图层的Map pane |
className |
String |
'' |
为瓦片图层指定的自定义类名。默认是空的。 |
keepBuffer |
Number |
2 |
平移地图时,在卸载之前保留这么多行和列的图块。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
loading |
Event |
当网格图层开始加载瓦片时触发。 |
tileunload |
TileEvent |
当瓦片被移除时触发(例如,当瓦片离开屏幕时)。 |
tileloadstart |
TileEvent |
当请求瓦片并开始加载时触发。 |
tileerror |
TileErrorEvent |
当加载瓦片出现错误时触发。 |
tileload |
TileEvent |
当瓦片加载时触发。 |
load |
Event |
当网格图层加载所有可见瓦片时触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
bringToFront() |
this |
将瓦片图层置于所有瓦片图层的顶部。 |
bringToBack() |
this |
将瓦片图层置于所有瓦片图层的底部。 |
getContainer() |
HTMLElement |
返回包含该图层的瓦片的 HTML 元素。 |
setOpacity( |
this |
改变网格图层的 opacity 。 |
setZIndex( |
this |
改变网格图层的 zIndex 。 |
isLoading() |
Boolean |
如果网格图层中的任何瓦片没有完成加载,则返回 |
redraw() |
this |
清除该图层的所有瓦片,并再次请求它们。 |
getTileSize() |
Point |
将 tileSize option 规范化为一个点。由 |
扩展方法
GridLayer
的图层应重新实现以下方法。方法 | 返回值 | 说明 |
---|---|---|
createTile( |
HTMLElement |
只在内部调用,必须由扩展 |
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
LatLng 经纬度
代表一个具有一定经纬度的地理点。
使用示例
var latlng = L.latLng(50.5, 30.5);
所有接受 LatLng 对象的 Leaflet 方法也接受它们的简单数组形式和简单对象形式(除非另有说明),所以这些行是等价的:
map.panTo([50, 30]);
map.panTo({lng: 30, lat: 50});
map.panTo({lat: 50, lng: 30});
map.panTo(L.latLng(50, 30));
注意 LatLng
并不继承自 Leaflet 的 Class
对象,这意味着新的类不能继承自它,也不能用 include
函数将新的方法添加到它。
Creation
构造函数 | 说明 |
---|---|
L.latLng( |
创建一个代表具有给定纬度和经度(以及可选的高度)的地理点的对象。 |
L.latLng( |
期待一个 [Number, Number] 或 [Number, Number, Number] 形式的数组来代替。 |
L.latLng( |
期待一个形式为 {lat: Number, lng: Number} 或 {lat: Number, lng: Number, alt: Number} 的普通对象来代替。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
equals( |
Boolean |
如果给定的 |
toString() |
String |
返回点的字符串表示(用于调试目的)。 |
distanceTo( |
Number |
|
wrap() |
LatLng |
返回一个新的 |
toBounds( |
LatLngBounds |
返回一个新的 |
Properties 属性
属性 | 类型 | 说明 |
---|---|---|
lat |
Number |
纬度(度) |
lng |
Number |
经度(度) |
alt |
Number |
海拔高度,以米为单位(可选) |
LatLngBounds 经纬度边界
在地图上代表一个矩形的地理区域。
使用示例
var corner1 = L.latLng(40.712, -74.227),
corner2 = L.latLng(40.774, -74.125),
bounds = L.latLngBounds(corner1, corner2);
所有接受 LatLngBounds 对象的 Leaflet 方法也接受它们的简单数组形式(除非另有说明),所以上面的边界例子可以这样传递:
map.fitBounds([
[40.712, -74.227],
[40.774, -74.125]
]);
注意:如果该地区跨越了反子午线(经常与国际日期变更线混淆), 你必须指定[-180, 180]度经度 范围之外 的角。
注意 LatLngBounds
没有继承自Leaflet的 Class
对象,这意味着新的类不能继承自它,新的方法也不能用 include
函数添加到它。
Creation
构造函数 | 说明 |
---|---|
L.latLngBounds( |
通过定义矩形的两个斜对角,创建一个 LatLngBounds 对象。 |
L.latLngBounds( |
创建一个由其包含的地理点定义的 LatLngBounds 对象。对于用 fitBounds 缩放地图以适应一组特定的位置非常有用。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
extend( |
this |
扩展边界以包含给定的点 |
extend( |
this |
扩展边界以包含给定的边界 |
pad( |
LatLngBounds |
返回通过在每个方向上以给定的比率扩展或缩减当前边界而创建的边界。 例如,比率为 0.5 时,界线在每个方向上都会延伸 50% 。 负值将缩减边界。 |
getCenter() |
LatLng |
返回边界的中心点。 |
getSouthWest() |
LatLng |
返回边界的西南点。 |
getNorthEast() |
LatLng |
返回边界的东北点。 |
getNorthWest() |
LatLng |
返回边界的西北点。 |
getSouthEast() |
LatLng |
返回边界的东南点。 |
getWest() |
Number |
返回边界的西经度 |
getSouth() |
Number |
返回边界的南纬度 |
getEast() |
Number |
返回边界的东经度 |
getNorth() |
Number |
返回边界的北纬度 |
contains( |
Boolean |
如果该矩形包含给定的矩形,则返回 |
contains( |
Boolean |
如果矩形包含给定的点,则返回 |
intersects( |
Boolean |
如果矩形与给定的边界相交,返回 |
overlaps( |
Boolean |
如果矩形与给定的边界重叠,返回 |
toBBoxString() |
String |
返回一个包含'southwest_lng、southwest_lat、northeast_lng、northeast_lat'格式的包围盒坐标的字符串。对于向返回地理数据的网络服务发送请求很有用。 |
equals( |
Boolean |
如果矩形与给定的边界相当(在一个小的误差范围内),则返回 |
isValid() |
Boolean |
如果边界被正确初始化,则返回 |
Point 点
代表一个点,其 x
和 y
坐标为像素。
使用示例
var point = L.point(200, 300);
所有接受 Point
对象的Leaflet方法和选项也接受它们的简单数组形式(除非另有说明),所以这些行是等价的:
map.panBy([200, 300]);
map.panBy(L.point(200, 300));
注意, Point
不继承 Leaflet 的 Class
对象,这意味着新的类不能继承于它,新的方法也不能用 include
函数添加到它。
Creation
构造函数 | 说明 |
---|---|
L.point( |
用给定的 x 和 y 坐标创建一个点对象。如果可选的 round 被设置为true,则对 x 和 y 值进行舍入。 |
L.point( |
期待一个形式为 [x, y] 的数组来代替。 |
L.point( |
期待一个形式为 {x: Number, y: Number} 的普通对象来代替。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
clone() |
Point |
返回当前点的拷贝。 |
add( |
Point |
返回当前点和给定点的相加结果。 |
subtract( |
Point |
返回给定点与当前点相减的结果。 |
divideBy( |
Point |
返回当前点除以给定数字的结果。 |
multiplyBy( |
Point |
返回当前点与给定数字相乘的结果。 |
scaleBy( |
Point |
将当前点的每个坐标与
|
unscaleBy( |
Point |
|
round() |
Point |
返回具有圆角坐标的当前点的拷贝。 |
floor() |
Point |
返回具有浮动坐标的当前点的拷贝(向下舍入)。 |
ceil() |
Point |
返回当前点的拷贝,坐标为最高值(四舍五入)。 |
trunc() |
Point |
返回具有截断坐标的当前点的拷贝(四舍五入为零)。 |
distanceTo( |
Number |
返回当前点和给定点之间的笛卡尔距离。 |
equals( |
Boolean |
如果给定的点具有相同的坐标,则返回 |
contains( |
Boolean |
如果给定点的两个坐标都小于相应的当前点坐标(绝对值),则返回 |
toString() |
String |
返回点的字符串表示,用于调试目的。 |
Properties 属性
属性 | 类型 | 说明 |
---|---|---|
x |
Number |
点的 x 坐标 |
y |
Number |
点的 y 坐标 |
Bounds 边界
以像素坐标代表一个矩形区域。
使用示例
var p1 = L.point(10, 10),
p2 = L.point(40, 60),
bounds = L.bounds(p1, p2);
所有接受 Bounds
对象的Leaflet方法也接受它们的简单数组形式(除非另有说明),所以上面的 bounds 例子可以这样传递:
otherBounds.intersects([[10, 10], [40, 60]]);
注意, Bounds
并不继承自 Leaflet 的 Class
对象,这意味着新的类不能继承自它,也不能用 include
函数向它添加新的方法。
Creation
构造函数 | 说明 |
---|---|
L.bounds( |
从两个角的坐标对创建一个 Bounds 对象。 |
L.bounds( |
从给定的点的数组中创建一个Bounds对象。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
extend( |
this |
扩展边界以包含给定的点。 |
getCenter( |
Point |
返回边界的中心点。 |
getBottomLeft() |
Point |
返回边界的左下角。 |
getTopRight() |
Point |
返回边界的右上角。 |
getTopLeft() |
Point |
返回边界的左上角 (即 |
getBottomRight() |
Point |
返回边界的右下角 (即 |
getSize() |
Point |
返回给定边界的大小 |
contains( |
Boolean |
如果该矩形包含给定的矩形,则返回 |
contains( |
Boolean |
如果矩形包含给定的点,则返回 |
intersects( |
Boolean |
如果矩形与给定的边界相交,返回 |
overlaps( |
Boolean |
如果矩形与给定的边界重叠,返回 |
Properties 属性
属性 | 类型 | 说明 |
---|---|---|
min |
Point |
矩形的左上角。 |
max |
Point |
矩形的右下角。 |
Icon 图标
代表创建标记时提供的一个图标。
使用示例
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 默认用于标记的蓝色图标。
Creation
构造函数 | 说明 |
---|---|
L.icon( |
用给定的选项创建一个图标实例。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
iconUrl |
String |
null |
(必填) 图标图像的URL(绝对路径或目前脚本所在的相对路径)。 |
iconRetinaUrl |
String |
null |
图标图像的视网膜尺寸版本的URL(绝对路径或目前脚本所在的相对路径), 用于视网膜屏幕设备。 |
iconSize |
Point |
null |
图标图像的尺寸,单位是像素。 |
iconAnchor |
Point |
null |
图标 "tip" 的坐标(相对于其左上角)。图标将被对齐,使该点位于标记的地理位置。如果指定了尺寸,默认为居中,也可以在CSS中设置负的边距。 |
popupAnchor |
Point |
[0, 0] |
弹出窗口(popup)的坐标,相对于图标锚点而言,将从该点打开。 |
tooltipAnchor |
Point |
[0, 0] |
工具提示(tooltip)的坐标,相对于图标锚点而言,将从该点打开。 |
shadowUrl |
String |
null |
图标阴影图像的URL。如果不指定,将不会创建阴影图像。 |
shadowRetinaUrl |
String |
null |
|
shadowSize |
Point |
null |
阴影图像的大小,单位是像素。 |
shadowAnchor |
Point |
null |
阴影 "tip" 的坐标(相对于其左上角)(如果没有指定,则与iconAnchor相同)。 |
className |
String |
'' |
用户给图标和阴影图像指定自定义类名,默认为空 |
crossOrigin |
Boolean|String |
false |
是否将 crossOrigin 属性添加到瓦片中。 如果提供了字符串,则所有瓦片的 crossOrigin 属性都将设置为提供的字符串。 如果您想访问平铺像素数据,则需要这样做。 有关有效的字符串值,请参阅 CORS 设置。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
createIcon( |
HTMLElement |
当必须显示图标时在内部调用,返回根据选项设置样式的 |
createShadow( |
HTMLElement |
对于它下面的阴影来说,如同 |
Icon.Default
Icon
的一个微不足道的子类,当没有指定图标时,代表在 Marker
中使用的图标。指向随 Leaflet 发布的蓝色标记图像。
为了定制默认图标,只需改变 L.Icon.Default.prototype.options
的属性
(这是一组 Icon options
)。
如果你想 全部 取代默认的图标,用你自己的图标覆盖
L.Marker.prototype.options.icon
。
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
imagePath |
String |
|
Icon.Default 将尝试自动检测蓝色图标图像的位置。如果你以非标准的方式放置这些图像,请设置该选项以指向正确的路径。 |
DivIcon
代表一个轻量级的标记图标,使用一个简单的 <div>
元素而不是图片。继承自 Icon
,但忽略了 iconUrl
和 shadow 选项。
使用示例
var myIcon = L.divIcon({className: 'my-div-icon'});
// 你可以在 .my-div-icon CSS 中设置样式
L.marker([50.505, 30.57], {icon: myIcon}).addTo(map);
默认情况下,它有一个 'leaflet-div-icon' CSS类,并被设计成一个带有阴影的白色小方块。
Creation
构造函数 | 说明 |
---|---|
L.divIcon( |
用给定的选项创建一个 DivIcon 实例。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
html |
String|HTMLElement |
'' |
自定义 HTML 代码,放在 div 元素内,默认为空。或者,一个 HTMLElement 的实例。 |
bgPos |
Point |
[0, 0] |
可选的背景的相对位置,单位是像素 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
iconUrl |
String |
null |
(必填) 图标图像的URL(绝对路径或目前脚本所在的相对路径)。 |
iconRetinaUrl |
String |
null |
图标图像的视网膜尺寸版本的URL(绝对路径或目前脚本所在的相对路径), 用于视网膜屏幕设备。 |
iconSize |
Point |
null |
图标图像的尺寸,单位是像素。 |
iconAnchor |
Point |
null |
图标 "tip" 的坐标(相对于其左上角)。图标将被对齐,使该点位于标记的地理位置。如果指定了尺寸,默认为居中,也可以在CSS中设置负的边距。 |
popupAnchor |
Point |
[0, 0] |
弹出窗口(popup)的坐标,相对于图标锚点而言,将从该点打开。 |
tooltipAnchor |
Point |
[0, 0] |
工具提示(tooltip)的坐标,相对于图标锚点而言,将从该点打开。 |
shadowUrl |
String |
null |
图标阴影图像的URL。如果不指定,将不会创建阴影图像。 |
shadowRetinaUrl |
String |
null |
|
shadowSize |
Point |
null |
阴影图像的大小,单位是像素。 |
shadowAnchor |
Point |
null |
阴影 "tip" 的坐标(相对于其左上角)(如果没有指定,则与iconAnchor相同)。 |
className |
String |
'' |
用户给图标和阴影图像指定自定义类名,默认为空 |
crossOrigin |
Boolean|String |
false |
是否将 crossOrigin 属性添加到瓦片中。 如果提供了字符串,则所有瓦片的 crossOrigin 属性都将设置为提供的字符串。 如果您想访问平铺像素数据,则需要这样做。 有关有效的字符串值,请参阅 CORS 设置。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
createIcon( |
HTMLElement |
当必须显示图标时在内部调用,返回根据选项设置样式的 |
createShadow( |
HTMLElement |
对于它下面的阴影来说,如同 |
Zoom 缩放
一个基本的缩放控件,有两个按钮(放大和缩小)。除非你把它的 zoomControl
选项 设置为 false
。扩展自 Control
。
Creation
构造函数 | 说明 |
---|---|
L.control.zoom( |
创建一个缩放控件 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
zoomInText |
String |
'<span aria-hidden="true">+</span>' |
设置在 'zoom in' 按钮上的文字。 |
zoomInTitle |
String |
'Zoom in' |
设置在 'zoom in' 按钮上的标题。 |
zoomOutText |
String |
'<span aria-hidden="true">−</span>' |
设置在 'zoom out' 按钮上的文字。 |
zoomOutTitle |
String |
'Zoom out' |
设置在 'zoom out' 按钮上的标题。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
position |
String |
'topright' |
控件的位置(地图的一个角)。可能的值是 'topleft' 、
'topright' 、 'bottomleft' 或 'bottomright' |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
getPosition() |
string |
返回控件的位置。 |
setPosition( |
this |
设置控件的位置。 |
getContainer() |
HTMLElement |
返回包含该控件的 HTMLElement。 |
addTo( |
this |
将控件添加到给定的地图中。 |
remove() |
this |
将控件从当前活动的地图上删除。 |
Attribution 版权
控件属性允许你在地图上的一个小文本框中显示属性数据。除非你把它的 attributionControl
选项 设置为 false
,否则它默认是放在地图上的,而且它可以用 getAttribution
方法 从图层中自动获取属性文本。扩展自 Control 。
Creation
构造函数 | 说明 |
---|---|
L.control.attribution( |
创建一个归属控件。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
prefix |
String|false |
'Leaflet' |
显示在属性前的 HTML 文本。传递 false 表示禁用。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
position |
String |
'topright' |
控件的位置(地图的一个角)。可能的值是 'topleft' 、
'topright' 、 'bottomleft' 或 'bottomright' |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
setPrefix( |
this |
设置属性之前显示的 HTML 文本。通过 |
addAttribution( |
this |
添加一个 Attribution 文本 (例如, |
removeAttribution( |
this |
移除一个 Attribution 文本。 |
方法 | 返回值 | 说明 |
---|---|---|
getPosition() |
string |
返回控件的位置。 |
setPosition( |
this |
设置控件的位置。 |
getContainer() |
HTMLElement |
返回包含该控件的 HTMLElement。 |
addTo( |
this |
将控件添加到给定的地图中。 |
remove() |
this |
将控件从当前活动的地图上删除。 |
Layers 图层
图层控件使用户能够在不同的基础图层之间进行切换,并打开/关闭覆盖物图层 (请看 详细示例)。扩展自 Control
。
使用示例
var baseLayers = {
"Mapbox": mapbox,
"OpenStreetMap": osm
};
var overlays = {
"Marker": marker,
"Roads": roadsLayer
};
L.control.layers(baseLayers, overlays).addTo(map);
baseLayers
和 overlays
参数是对象字面, layer 名作为键, Layer
对象是值:
{
"<someName1>": layer1,
"<someName2>": layer2
}
图层名称可以包含 HTML,这使你可以为项目添加额外的样式:
{"<img src='my-layer-icon' /> <span class='my-layer-item'>My Layer</span>": myLayer}
Creation
构造函数 | 说明 |
---|---|
L.control.layers( |
创建一个具有给定图层的图层控件。基本图层将用单选按钮切换,而覆盖物图层将用复选框切换。注意,所有的基本图层都应该在基本图层对象中传递,但在地图实例化过程中,只有一个图层应该被添加到地图中。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
collapsed |
Boolean |
true |
如果为 true , 该控件将被折叠成一个图标,并在鼠标悬停或触摸时展开。 |
autoZIndex |
Boolean |
true |
如果为 true , 控件将以递增的顺序为其所有图层分配 zIndexes,以便在开/关它们时保留顺序。 |
hideSingleBase |
Boolean |
false |
如果为 true , 当只有一个基础图层时,控件中的基础图层将被隐藏。 |
sortLayers |
Boolean |
false |
是否对各图层进行排序。如果是 false , ,图层将保持它们被添加到控件中的顺序。 |
sortFunction |
Function |
* |
一个 排序函数
,当 sortLayers 为 true 时,它将被用于对图层进行排序。该函数同时接收 L.Layer 实例和它们的名字,如
sortFunction(layerA, layerB, nameA, nameB) 。默认情况下,它按照名字的字母顺序对图层进行排序。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
position |
String |
'topright' |
控件的位置(地图的一个角)。可能的值是 'topleft' 、
'topright' 、 'bottomleft' 或 'bottomright' |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
addBaseLayer( |
this |
在控件中添加一个具有给定名称的基础图层(单选按钮条目)。 |
addOverlay( |
this |
在控件中添加一个具有给定名称的覆盖物(复选框条目)。 |
removeLayer( |
this |
从控件中移除给定的图层。 |
expand() |
this |
如果是折叠的,则展开控制容器。 |
collapse() |
this |
如果展开,则折叠控制容器。 |
方法 | 返回值 | 说明 |
---|---|---|
getPosition() |
string |
返回控件的位置。 |
setPosition( |
this |
设置控件的位置。 |
getContainer() |
HTMLElement |
返回包含该控件的 HTMLElement。 |
addTo( |
this |
将控件添加到给定的地图中。 |
remove() |
this |
将控件从当前活动的地图上删除。 |
Scale 比例尺
一个简单的比例尺控件,以公制(m/km)和英制(mi/ft)系统显示当前屏幕中心的比例。扩展自 Control
。
使用示例
L.control.scale().addTo(map);
Creation
构造函数 | 说明 |
---|---|
L.control.scale( |
用给定的选项创建一个比例尺控件。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
maxWidth |
Number |
100 |
控件的最大宽度,单位是像素。宽度是动态设置的,以显示圆形值(如100、200、500)。 |
metric |
Boolean |
True |
是否显示公制比例线(米/公里)。 |
imperial |
Boolean |
True |
是否显示英制比例线(英里/英尺)。 |
updateWhenIdle |
Boolean |
false |
如果为 true , 控件在 移动结束 时被更新,否则它总是最新的( move 时更新)。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
position |
String |
'topright' |
控件的位置(地图的一个角)。可能的值是 'topleft' 、
'topright' 、 'bottomleft' 或 'bottomright' |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
getPosition() |
string |
返回控件的位置。 |
setPosition( |
this |
设置控件的位置。 |
getContainer() |
HTMLElement |
返回包含该控件的 HTMLElement。 |
addTo( |
this |
将控件添加到给定的地图中。 |
remove() |
this |
将控件从当前活动的地图上删除。 |
Browser 浏览器
Leaflet 内部使用的具有用于浏览器/功能检测的静态属性的命名空间。
使用示例
if (L.Browser.ielt9) {
alert('Upgrade your browser, dude!');
}
Properties 属性
属性 | 类型 | 说明 |
---|---|---|
ie |
Boolean |
当浏览器是 Internet Explorer(不是Edge)时,则返回 true 。 |
ielt9 |
Boolean |
当浏览器是版本号小于 9 的 Internet Explorer 时则返回 true 。 |
edge |
Boolean |
当浏览器是 Edge 浏览器时则返回 true 。 |
webkit |
Boolean; |
当浏览器是基于 webkit 的浏览器时,如 Chrome 和 Safari(包括移动版本),则返回 true 。 |
android |
Boolean |
当浏览器是运行在安卓平台上的任何浏览器时则都返回 true 。 |
android23 |
Boolean |
当浏览器是运行在安卓2或安卓3上的任何浏览器时则都返回 true 。 |
androidStock |
Boolean |
当浏览器是运行在安卓平台的任何非 Chrome 浏览器时则返回 true 。 |
opera |
Boolean |
当浏览器是 Opera 浏览器时则返回 true 。 |
chrome |
Boolean |
当浏览器是 Chrome 浏览器时则返回 true 。 |
gecko |
Boolean |
当浏览器是类似于 Firefox 这种基于 gecko 的浏览器时则返回 true 。 |
safari |
Boolean |
当浏览器是 Safari 浏览器时则返回 true 。 |
opera12 |
Boolean |
当浏览器是支持 CSS transforms 的 Opera 浏览器(版本号是12或更高版本)时则返回 true 。 |
win |
Boolean |
当浏览器是在 Windows 平台上运行时则返回 true 。 |
ie3d |
Boolean |
当浏览器是支持 CSS transforms 的所有版本的 Internet Explorer 浏览器时则都返回 true 。 |
webkit3d |
Boolean |
当浏览器是支持 CSS transforms 并且基于 webkit 的浏览器时则返回 true 。 |
gecko3d |
Boolean |
当浏览器是支持 CSS transforms 并且基于 gecko 的浏览器时则返回 true 。 |
any3d |
Boolean |
当浏览器是支持 CSS transforms 的浏览器时则返回 true 。 |
mobile |
Boolean |
对于在移动设备中运行的所有浏览器来说都为 true 。 |
mobileWebkit |
Boolean |
对移动设备中所有基于 webkit 的浏览器来说都为 true 。 |
mobileWebkit3d |
Boolean |
对于支持 CSS transforms 的移动设备中所有基于 webkit 的浏览器来说都为true 。 |
msPointer |
Boolean |
对于实现微软触摸事件模型的浏览器(特别是IE10)来说都为 true 。 |
pointer |
Boolean |
对于所有支持 指针事件 的浏览器来说都为true 。 |
touchNative |
Boolean |
对于所有支持 触摸事件的浏览器来说都为 true 。这并不一定意味着浏览器是在有触摸屏的电脑中运行的,它只意味着浏览器能够理解触摸事件。 |
touch |
Boolean |
对于所有支持 touch 或 pointer 事件的浏览器来说都为 true 。
注意:pointer 事件将是首选(如果可用),并被所有 touch* 事件所监听和处理。 |
mobileOpera |
Boolean |
对于移动设备中的 Opera 浏览器来说都为 true 。 |
mobileGecko |
Boolean |
用于在移动设备中运行的基于 gecko 的浏览器来说都为 true 。 |
retina |
Boolean |
对于高分辨率 "retina" 屏幕上的浏览器或浏览器的显示缩放率超过100%的任何屏幕上的浏览器来说,都是 true 。 |
passiveEvents |
Boolean |
对于支持 passive 事件的浏览器来说都为 true 。 |
canvas |
Boolean |
当浏览器支持 <canvas> 时为 true 。 |
svg |
Boolean |
当浏览器支持 SVG 时为 true 。 |
vml |
Boolean |
当浏览器支持 VML 时为 true 。 |
Util 工具函数
在 Leaflet 内部使用的各种工具函数。
Functions
Function | 返回值 | 说明 |
---|---|---|
extend( |
Object |
将 src 对象(或多个对象)的属性合并到 dest 对象中并返回后者。有一个 L.extend 的快捷方式。 |
create( |
Object |
对 Object.create 的兼容性 polyfill |
bind( |
Function |
返回一个与传递的参数绑定的新函数,就像 Function.prototype.bind.
。有一个 L.bind() 的快捷方式 |
stamp( |
Number |
返回一个对象的唯一 ID,如果它没有 ID 就给它分配一个。 |
throttle( |
Function |
返回一个函数,该函数以给定的范围 上下文 执行函数 fn
(因此, this 关键字指的是 fn 代码中的 context )。 在给定的时间内,函数
fn 将被调用不超过一 次 。 被绑定的函数收到的参数将是绑定函数时传递的任何参数,然后是调用绑定函数时传递的任何参数。有一个 L.throttle 的快捷方式。 |
wrapNum( |
Number |
返回数字 num modulo range 的方式,使其位于
range[0] 和 range[1] 内。除非 includeMax 被设置为 true ,否则返回的值将总是小于range[1] 。 |
falseFn() |
Function |
返回一个总是返回 false 的函数。 |
formatNum( |
Number |
返回四舍五入到小数点后的 数字 num ,或者默认为6位小数。 |
trim( |
String |
String.prototype.trim的兼容性 polyfill |
splitWords( |
String[] |
在空白处对字符串进行修剪和分割,并返回各部分的数组。 |
setOptions( |
Object |
将给定的属性合并到 obj 对象的 选项 中, 返回生成的选项。 参见 Class 选项 。有一个 L.setOptions 快捷方式。 |
getParamString( |
String |
将一个对象转换为一个参数URL字符串,例如, {a: "foo", b: "bar"}
翻译为 '?a=foo&b=bar' 。如果设置了 existingUrl ,参数将被附加在最后。如果 大写字母 为 true , 参数名称将被大写字母化 (例如 '?A=foo&B=bar' ) |
template( |
String |
简单的模板化工具,接受 'Hello {a}, {b}'
形式的模板字符串和 {a: 'foo', b: 'bar'} 这样的数据对象,返回已评估的字符串
('Hello foo, bar') 。你也可以为数据值指定函数而不是字符串——它们将通过 data 作为参数被评估。 |
isArray(obj) |
Boolean |
Array.isArray的兼容性 polyfill |
indexOf( |
Number |
Array.prototype.indexOf 的兼容性 polyfill |
requestAnimFrame( |
Number |
当浏览器重绘时,安排 fn 被执行。如果给定的话, fn 被绑定到
context 。如果设置了 immediate ,如果浏览器没有对 window.requestAnimationFrame 的本地支持,fn 会被立即调用,否则会被延迟。返回一个请求ID,可以用来取消请求。 |
cancelAnimFrame( |
undefined |
取消之前的 requestAnimFrame 。可以参考 window.cancelAnimationFrame。 |
Properties 属性
属性 | 类型 | 说明 |
---|---|---|
lastId |
Number |
stamp() 使用的最后一个唯一 ID |
emptyImageUrl |
String |
数据 URI 字符串,包含一个 base64 编码的空 GIF 图像。作为一个黑客,用于释放 WebKit 驱动的移动设备上未使用的图像的内存 (通过设置图像 src 为这个字符串)。 |
Transformation 转换
代表一个仿生转换:一组系数 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)
Creation
构造函数 | 说明 |
---|---|
L.transformation( |
实例化一个具有给定系数的 Transformation 对象。 |
L.transformation( |
期待一个形式为
[a: Number, b: Number, c: Number, d: Number] 的系数阵列。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
transform( |
Point |
返回一个转换后的点,可以选择乘以给定的比例。只接受实际的 |
untransform( |
Point |
返回给定点的反向转换,可以选择除以给定的比例。只接受实际的 |
LineUtil 折线工具
用于折线点处理的各种实用工具函数,Leaflet 内部使用它来快速制作折线。
Functions
Function | 返回值 | 说明 |
---|---|---|
simplify( |
Point[] |
使用 Douglas-Peucker 算法,大幅减少折线的点数,同时保留其形状,并返回一个新的简化点阵列。在处理/显示每个缩放级别的 Leaflet 折线时,用于巨大的性能提升,同时也减少了视觉噪音。宽容度影响简化的数量(较小的值意味着更高的质量,但速度较慢,点较多)。也作为一个独立的微库 Simplify.js发布。 |
pointToSegmentDistance( |
Number |
返回点 p 和线段 p1 到 p2 之间的距离。 |
closestPointOnSegment( |
Number |
返回线段 p1 上的一个点 p 到 p2 的最近点。 |
clipSegment( |
Point[]|Boolean |
用 Cohen-Sutherland 算法 (直接修改线段点!)将线段 a 到 b 按矩形边界剪辑。被 Leaflet 用来只显示屏幕上或附近的折线点,提高性能。 |
isFlat( |
Boolean |
如果 latlngs 是一个平面数组,返回 true;如果是一个嵌套数组,则返回 false。 |
PolyUtil 多边形工具函数
用于多边形几何形状的各种实用函数。
Functions
Function | 返回值 | 说明 |
---|---|---|
clipPolygon( |
Point[] |
通过给定的边界(使用 Sutherland-Hodgman 算法)对给定的点 所定义的多边形几何图形进行剪辑。Leaflet 用它来显示在屏幕上或附近的多边形点,以提高性能。注意,多边形点需要不同的剪裁算法,所以有一个单独的方法来处理。 |
DomEvent
在 Leaflet 内部用于处理 DOM 事件的实用函数。
Functions
Function | 返回值 | 说明 |
---|---|---|
on( |
this |
为元素 el 的一个特定的 DOM 事件类型添加一个 listener 函数 (fn ) 。你可以选择性地指定 listener 的上下文
( this 关键字将指向的对象)。你也可以传递几个空格分隔的类型 (例如 'click dblclick' )。 |
on( |
this |
添加一组 type/listener,例如 {click: onClick, mousemove: onMouseMove} 。 |
off( |
this |
移除先前添加的 listener 函数。注意,如果你给 on 传递了一个自定义的上下文,你必须给 off 传递同样的上下文,以便删除 listener。 |
off( |
this |
删除一组 type/listener,例如 {click: onClick, mousemove: onMouseMove} |
off( |
this |
Removes all previously added listeners of given types. |
off( |
this |
Removes all previously added listeners from given HTMLElement |
stopPropagation( |
this |
停止给定的事件向父元素传递。在 listener 函数中使用:
|
disableScrollPropagation( |
this |
将 stopPropagation 添加到元素的 'wheel' 事件 (加上浏览器的变体)。 |
disableClickPropagation( |
this |
将 stopPropagation 添加到元素的 'click' 、 'doubleclick' 、
'mousedown' 和 'touchstart' 事件 (加上浏览器的变体)。 |
preventDefault( |
this |
阻止DOM事件 ev 的默认事件发生(如跟随a元素的href中的链接,或在提交 <form> 时做 POST 请求并重新加载页面)。在 listener 函数中使用它。 |
stop( |
this |
同时做 stopPropagation 和 preventDefault 。 |
getMousePosition( |
Point |
从DOM事件中获取相对于容器 (不包括边框) 的规范化鼠标位置,如果没有指定,则获取相对于整个页面的规范化鼠标位置。 |
getWheelDelta( |
Number |
从一个滚轮 DOM 事件中获取正常化的滚轮 delta,以滚动的垂直像素为单位(如果向下滚动则为负数)。来自没有精确滚动的指点设备的事件被映射为 60 像素的最佳猜测。 |
addListener(…) |
this |
同 L.DomEvent.on |
removeListener(…) |
this |
同 L.DomEvent.off |
DomUtil
在 Leaflet 内部用于处理 DOM 树的实用函数。
大多数期望或返回 HTMLElement
的函数也适用于 SVG 元素。唯一的区别是,类是指 HTML 中的 CSS 类,而 SVG 中的 SVG 类。
Functions
Function | 返回值 | 说明 |
---|---|---|
get( |
HTMLElement |
返回一个给定的 DOM ID 的元素,如果是直接传递,则返回元素本身。 |
getStyle( |
String |
返回一个元素上的某个样式属性的值。包括计算值或通过 CSS 设置的值。 |
create( |
HTMLElement |
用 tagName 创建一个HTML元素,将它的类设置为 className ,并可选择将其附加到 容器 元素中。 |
remove( |
|
将 el 从其父元素中移除 |
empty( |
|
从 el 中删除所有 el 的子元素 |
toFront( |
|
使 el 成为其父级的最后一个子级,因此它在其他子级之前渲染。 |
toBack( |
|
使 el 成为其父级的第一个子级,因此它渲染在其他子级之后。 |
hasClass( |
Boolean |
如果该元素的 class 属性包含该 class 类名 ,返回 true 。 |
addClass( |
|
将该 class 类名 添加到元素的 class 属性中。 |
removeClass( |
|
从元素的 class 属性中删除 class 类名 。 |
setClass( |
|
设置元素的 class 类名。 |
getClass( |
String |
返回元素的 class 类名。 |
setOpacity( |
|
设置一个元素的不透明度(包括旧的IE支持)。
opacity 必须是一个从 0 到 1 的数字。 |
testProp( |
String|false |
遍历样式名称的数组,并返回第一个对一个元素有效的样式名称。如果没有找到这样的名字,它将返回false。对于像 transform 这样的供应商固定的样式很有用。 |
setTransform( |
|
重置 el 的3D CSS Transform,使其按偏移像素进行 平移 ,并可选择按比例 缩放 。如果浏览器不支持3D CSS Transform,则不会产生影响。 |
setPosition( |
|
将 el 的位置设置为由 position 指定的坐标,根据浏览器使用CSS translate 或 top/left 定位(Leaflet 内部用来定位其图层)。 |
getPosition( |
Point |
返回之前用 setPosition 设置的元素的坐标。 |
disableTextSelection() |
|
阻止用户生成 selectstart DOM 事件,通常在用户通过带有文本的页面拖动鼠标时生成。由 Leaflet 在内部使用以覆盖地图上任何点击和拖动交互的行为。影响整个文档上的拖动交互。 |
enableTextSelection() |
|
取消之前 L.DomUtil.disableTextSelection 的效果。 |
disableImageDrag() |
|
如同 L.DomUtil.disableTextSelection ,但用于 dragstart DOM事件,通常在用户拖动图片时产生。 |
enableImageDrag() |
|
取消之前 L.DomUtil.disableImageDrag 的效果。 |
preventOutline( |
|
使元素 el 的 轮廓不可见。由 Leaflet 在内部使用,以防止可聚焦元素在用户对它们执行拖动交互时显示轮廓。 |
restoreOutline() |
|
取消之前 L.DomUtil.preventOutline 的效果。 |
getSizedParentNode( |
HTMLElement |
找到尺寸(宽和高)不为空的最近的父节点。 |
getScale( |
Object |
计算当前应用在该元素上的CSS比例。返回一个对象,其 x 和 y 成员分别是水平和垂直比例,而 boundingClientRect 是 getBoundingClientRect() 的结果。 |
Properties 属性
属性 | 类型 | 说明 |
---|---|---|
TRANSFORM |
String |
供应商前缀的转换样式名称 (例如,Webkit 的 'webkitTransform' )。 |
TRANSITION |
String |
供应商前缀的过渡样式名称。 |
TRANSITION_END |
String |
供应商前缀的 transitionend 事件名称。 |
PosAnimation 平移动画
在内部用于平移动画,利用现代浏览器的 CSS3 Transitions 和 IE6-9 的 timer fallback。
使用示例
var fx = new L.PosAnimation();
fx.run(el, [300, 500], 0.5);
Constructor
Constructor | 说明 |
---|---|
L.PosAnimation() |
创建一个 PosAnimation 对象。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
start |
Event |
当动画开始时触发 |
step |
Event |
在动画期间连续触发。 |
end |
Event |
动画结束时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
run( |
|
运行一个给定元素的动画到一个新的位置,可以选择设置持续时间(秒) (默认为 |
stop() |
|
停止动画(如果当前正在运行)。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
Draggable 拖拽
一个用于使 DOM 元素可拖动的类(包括触摸支持)。内部用于地图和标记的拖动。只对用 L.DomUtil.setPosition
定位的元素起作用。
使用示例
var draggable = new L.Draggable(elementToDrag);
draggable.enable();
Constructor
Constructor | 说明 |
---|---|
L.Draggable( |
当你开始拖动 dragHandle 元素 (默认等于 el 本身),创建一个 Draggable 对象用于移动 el 。 |
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
clickTolerance |
Number |
3 |
用户在单击期间被认为是有效的点击(而不是鼠标拖动)的鼠标指针可以移动的最大像素数。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
down |
Event |
当一个拖动即将开始时触发。 |
dragstart |
Event |
当拖动开始时被触发 |
predrag |
Event |
在拖动过程中,在元素位置的每次相应更新 之前 连续触发。 |
drag |
Event |
在拖动过程中连续触发。 |
dragend |
DragEndEvent |
当拖动结束时被触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
enable() |
|
启用拖拽功能 |
disable() |
|
禁用拖拽功能 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
Class 类
L.Class 为 Leaflet 的 OOP 设施提供了动力,它被用来创建这里记录的几乎所有 Leaflet 类。
除了实现一个简单的经典继承模型之外,它还引入了几个方便代码组织的特殊属性——options, includes 和 statics。
使用示例
var MyClass = L.Class.extend({
initialize: function (greeter) {
this.greeter = greeter;
// 类构造函数
},
greet: function (name) {
alert(this.greeter + ', ' + name)
}
});
// 创建 MyClass 的实例,将 "Hello" 传给构造函数
var a = new MyClass("Hello");
// 调用 greet 方法,提示 "Hello, World"
a.greet("World");
Class Factories
您可能已经注意到 Leaflet 对象是在不使用 new
关键字的情况下创建的。这是通过用小写工厂方法补充每个类来实现的:
new L.Map('map'); // becomes:
L.map('map');
工厂的实现非常容易,你可以为你自己的类做这个:
L.map = function (id, options) {
return new L.Map(id, options);
};
Inheritance 继承
你使用 L.Class.extend 来定义新的类,但你可以在任何类上使用同样的方法来继承它:
var MyChildClass = MyClass.extend({
// ... 新的属性和方法
});
这将创建一个继承父类的所有方法和属性的类(通过适当的原型链),添加或覆盖您传递给扩展的方法和属性。它也会对 instanceof 做出正确的反应:
var a = new MyChildClass();
a instanceof MyChildClass; // true
a instanceof MyClass; // true
您可以通过访问父类原型并使用 JavaScript 的 call 或 apply 从相应的子方法调用父方法(包括构造函数)(就像其他语言中的超级调用一样):
var MyChildClass = MyClass.extend({
initialize: function () {
MyClass.prototype.initialize.call(this, "Yo");
},
greet: function (name) {
MyClass.prototype.greet.call(this, 'bro ' + name + '!');
}
});
var a = new MyChildClass();
a.greet('Jason'); // alerts "Yo, bro Jason!"
Options 选项
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 包含
includes
是一个特殊的类属性,它将所有指定的对象合并到类中(这样的对象被称为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'
Constructor hooks
如果你是一个插件的开发者,你经常需要为现有的类添加额外的初始化代码 (例如,为 L.Polyline
编辑钩子)。Leaflet自带了一种方法,可以使用 addInitHook
方法轻松做到这一点:
MyClass.addInitHook(function () {
// ... 在构造函数中额外做一些事情
// 例如添加事件侦听器,设置自定义属性等。
});
当您只需要进行一个额外的方法调用时,您也可以使用以下快捷方式:
MyClass.addInitHook('methodName', arg1, arg2, …);
Functions 函数
Function | 返回值 | 说明 |
---|---|---|
extend( |
Function |
扩展当前的类 ,给定要包括的属性。返回一个Javascript函数,该函数是一个类的构造函数 (可与 new 一起调用)。 |
include( |
this |
在当前类中包含一个 mixin 。 |
mergeOptions( |
this |
合并 选项 到类的默认值中。 |
addInitHook( |
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);
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
Layer 图层
一组来自 Layer 基类的方法,所有 Leaflet 图层都使用。继承 L.Evented
的所有方法、选项和事件。
使用示例
var layer = L.marker(latlng).addTo(map);
layer.addTo(map);
layer.remove();
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pane |
String |
'overlayPane' |
默认情况下,该图层将被添加到地图的 overlay pane(覆盖窗格)中。 覆盖该选项将导致该图层被默认放置在另一个窗格中。 |
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
add |
Event |
在图层添加到地图后触发 |
remove |
Event |
从地图中移除图层后触发 |
Popup events
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
Tooltip events
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
L.Layer
的类将继承以下方法:方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
Extension methods 扩展方法
L.Layer
,并(重新)实现以下方法。方法 | 返回值 | 说明 |
---|---|---|
onAdd( |
this |
应该包含为图层创建 DOM 元素的代码,将它们添加到应该属于它们的 |
onRemove( |
this |
应该包含所有的清理代码,将图层的元素从DOM中移除,并移除之前在 |
getEvents() |
Object |
这个可选的方法应该返回一个类似 |
getAttribution() |
String |
这个可选的方法应该返回一个包含 HTML 的字符串,只要该图层是可见的,就会显示在 |
beforeAdd( |
this |
可选的方法。在 |
Popup 方法
var layer = L.Polygon(latlngs).bindPopup('Hi There!').addTo(map);
layer.openPopup();
layer.closePopup();
单击图层时弹出窗口也会自动打开,当图层从地图中移除或打开另一个弹出窗口时会关闭弹出窗口。
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
Tooltip 方法
var layer = L.Polygon(latlngs).bindTooltip('Hi There!').addTo(map);
layer.openTooltip();
layer.closeTooltip();
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
Interactive layer 交互图层
一些 Layer
可以交互——当用户与这样的图层交互时,可以处理鼠标事件,如 click
和 mouseover
。 使用 事件处理方法 来处理这些事件。
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
interactive |
Boolean |
true |
如果是 false , 该图层将不会发出鼠标事件,而是作为底层地图的一部分。 |
bubblingMouseEvents |
Boolean |
true |
当为 true 时,此标记上的鼠标事件将触发地图上的相同事件(除非使用 L.DomEvent.stopPropagation )。 |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pane |
String |
'overlayPane' |
默认情况下,该图层将被添加到地图的 overlay pane(覆盖窗格)中。 覆盖该选项将导致该图层被默认放置在另一个窗格中。 |
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
Mouse events 鼠标事件
事件 | 数据 | 说明 |
---|---|---|
click |
MouseEvent |
当用户 click 或 tap 该图层时触发。 |
dblclick |
MouseEvent |
当用户 double-click 或 double-tap 该图层时触发。 |
mousedown |
MouseEvent |
当用户在该图层上按下鼠标按钮时触发。 |
mouseup |
MouseEvent |
当用户在该图层上释放按下的鼠标按钮时触发。 |
mouseover |
MouseEvent |
鼠标进入该图层时触发。 |
mouseout |
MouseEvent |
当鼠标离开该图层时触发。 |
contextmenu |
MouseEvent |
当用户在图层上点击右键时触发,如果该事件有监听者,可以防止显示默认的浏览器上下文菜单。在手机上,当用户保持单次触摸一秒钟(也叫长按)时也会触发。 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
Control 控件
L.Control是一个实现地图控件的基类。负责处理定位。 所有其他的控件都是从这个类中延伸出来的。
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
position |
String |
'topright' |
控件的位置(地图的一个角)。可能的值是 'topleft' 、
'topright' 、 'bottomleft' 或 'bottomright' |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
getPosition() |
string |
返回控件的位置。 |
setPosition( |
this |
设置控件的位置。 |
getContainer() |
HTMLElement |
返回包含该控件的 HTMLElement。 |
addTo( |
this |
将控件添加到给定的地图中。 |
remove() |
this |
将控件从当前活动的地图上删除。 |
Extension methods 扩展方法
L.Control
扩展并(重新)实现以下方法。方法 | 返回值 | 说明 |
---|---|---|
onAdd( |
HTMLElement |
应该返回控件的容器 DOM 元素,并在相关的地图事件上添加监听器。在 |
onRemove( |
|
可选的方法。应该包含所有清理代码,删除之前在 |
Handler 处理程序
地图交互处理程序的抽象类
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
enable() |
this |
启用处理程序 |
disable() |
this |
禁用处理程序 |
enabled() |
Boolean |
如果处理程序被启用,返回 |
Extension methods 扩展方法
Handler
的类必须实现以下两个方法:方法 | 返回值 | 说明 |
---|---|---|
addHooks() |
|
当处理程序被启用时被调用,应该添加事件钩子。 |
removeHooks() |
|
当处理程序被禁用时被调用,应该删除之前添加的事件钩子。 |
Functions 函数
有一个静态函数可以在不实例化 L.Handler 的情况下被调用:
Function | 返回值 | 说明 |
---|---|---|
addTo( |
this |
在给定的地图上添加一个新的处理程序,并给定名称。 |
Projection 地图投影
具有将世界的地理坐标投影到平面(和背面)的方法的对象。 请参阅 地图投影。
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
project( |
Point |
将地理坐标投影到 2D 点中。 只接受实际的 |
unproject( |
LatLng |
请注意,投影实例不继承于 Leaflet 的 |
Properties 属性
属性 | 类型 | 说明 |
---|---|---|
bounds |
Bounds |
投影有效的边界(以 CRS 单位指定) |
Defined projections 自定义投影
Projection | 说明 |
---|---|
L.Projection.LonLat |
Equirectangular 或 Plate Carree 投影 — 最简单的投影,主要由 GIS 爱好者使用。 直接将 x 映射为经度,将 y 映射为纬度。 也适用于平坦的世界,例如 游戏地图。 由
EPSG:4326 和 Simple CRS 使用。 |
L.Projection.Mercator |
椭圆墨卡托投影——比球面墨卡托更复杂。 假设地球是一个椭球体。 EPSG 使用:3395 CRS。 |
L.Projection.SphericalMercator |
球面墨卡托投影 — 最常见的在线地图投影,几乎所有免费和商业瓦片供应商都在使用。 假设地球是一个球体。 EPSG 使用:3857 CRS。 |
CRS 坐标系
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
latLngToPoint( |
Point |
将地理坐标投影到给定缩放的像素坐标中。 |
pointToLatLng( |
LatLng |
|
project( |
Point |
将地理坐标投影为接受单位的坐标 此 CRS(例如 EPSG:3857 的仪表,用于将其传递给 WMS 服务)。 |
unproject( |
LatLng |
给定一个投影坐标返回相应的 LatLng。 |
scale( |
Number |
返回将投影坐标转换为特定缩放的像素坐标时使用的比例。 例如,它为基于墨卡托的 CRS 返回
|
zoom( |
Number |
|
getProjectedBounds( |
Bounds |
返回投影的边界,并根据提供的 |
distance( |
Number |
返回两个地理坐标之间的距离。 |
wrapLatLng( |
LatLng |
返回一个 |
wrapLatLngBounds( |
LatLngBounds |
返回一个与给定大小相同的 |
Properties 属性
属性 | 类型 | 说明 |
---|---|---|
code |
String |
传递到 WMS 服务的 CRS 的标准代码名称 (例如 'EPSG:3857' ) |
wrapLng |
Number[] |
由两个数字组成的数组,用于定义经度(水平)坐标轴是否环绕给定范围以及如何环绕。 在大多数地理 CRS 中默认为 [-180, 180] 。 如果 undefined ,则经度轴不会环绕。 |
wrapLat |
Number[] |
与 wrapLng 类似,但用于纬度(垂直)轴。 |
infinite |
Boolean |
如果为 true ,坐标空间将是无界的(在两个轴上是无限的)。 |
Defined CRSs 定义 CRSs
CRS | 说明 |
---|---|
L.CRS.EPSG3395 |
一些商业瓦片供应商很少使用。使用椭圆墨卡托投影。 |
L.CRS.EPSG3857 |
在线地图最常见的 CRS,几乎所有的免费和商业瓦片供应商都在使用。使用球面墨卡托投影。默认设置在地图的 crs 选项中。 |
L.CRS.EPSG4326 |
GIS爱好者中常见的一种CRS。使用简单的等角投影。
Leaflet 1.0.x 符合 EPSG:4326 的 TMS 坐标方案,这是对 0.7.x 行为的重大更改。 如果您在此 CRS 中使用 |
L.CRS.Earth |
作为覆盖地球的全球 CRS 的基础。 只能作为其他CRS的基础,不能直接使用,因为它没有 code 、 projection 或 transformation 。 distance() 返回米。 |
L.CRS.Simple |
一个简单的 CRS,将经度和纬度直接映射为 x 和 y 。可用于平坦表面的地图(例如游戏地图)。注意, y
轴仍然应该是倒置的(从下往上)。 distance() 返回简单的欧氏距离。 |
L.CRS.Base |
定义坐标参考系统的对象,用于将地理点投射到像素(屏幕)坐标并返回 (以及投射到其他单位的坐标,用于 WMS 服务)。见
空间参考系统。
Leaflet 默认定义了最常用的CRS。如果你想使用默认情况下没有定义的CRS,可以看看 Proj4Leaflet 插件。 请注意,CRS 实例不继承 Leaflet 的 |
Renderer 矢量渲染器
矢量渲染器实现 (SVG
、 Canvas
) 的基类。 处理渲染器的 DOM 容器、它的边界和它的缩放动画。
渲染器
作为所有 路径
的隐式图层组工作--渲染器本身可以被添加或移除到地图中。所有路径都使用一个渲染器,它可以是隐式的 (地图会决定渲染器的类型并自动使用)
,也可以是显式的 (使用路径的 渲染器
选项)。
Options 选项
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
padding |
Number |
0.1 |
在地图视图周围填充多少剪切区域(相对于其大小),例如0.1是在每个方向填充地图视图的10% |
选项 | 类型 | 默认值 | 说明 |
---|---|---|---|
pane |
String |
'overlayPane' |
默认情况下,该图层将被添加到地图的 overlay pane(覆盖窗格)中。 覆盖该选项将导致该图层被默认放置在另一个窗格中。 |
attribution |
String |
null |
归属控制中要显示的字符串,例如 "© OpenStreetMap 贡献者"。 它描述了图层数据,通常是对版权所有者和瓦片提供者的法律义务。 |
Events 事件
事件 | 数据 | 说明 |
---|---|---|
update |
Event |
当渲染器更新边界、中心和缩放时触发,例如地图移动时 |
事件 | 数据 | 说明 |
---|---|---|
popupopen |
PopupEvent |
当绑定到该层的 popup 打开时触发 |
popupclose |
PopupEvent |
当绑定到该层的 popup 关闭时触发 |
事件 | 数据 | 说明 |
---|---|---|
tooltipopen |
TooltipEvent |
当绑定到该层的 tooltip 打开时触发。 |
tooltipclose |
TooltipEvent |
当绑定到该层的 tooltip 关闭时触发。 |
Methods 方法
方法 | 返回值 | 说明 |
---|---|---|
addTo( |
this |
将图层添加到指定的地图或图层组(LayerGroup)。 |
remove() |
this |
从当前处于活动状态的地图中删除图层。 |
removeFrom( |
this |
从指定的地图中删除图层 |
removeFrom( |
this |
从指定的 |
getPane( |
HTMLElement |
返回代表地图上指定窗格的 |
getAttribution() |
String |
由 |
方法 | 返回值 | 说明 |
---|---|---|
bindPopup( |
this |
将一个弹出式窗口与传入的 |
unbindPopup() |
this |
移除之前用 bindPopup 绑定的弹出窗口。
|
openPopup( |
this |
在指定的 |
closePopup() |
this |
如果与当前图层绑定的弹窗(popup)时打开的,则关闭当前弹窗。 |
togglePopup() |
this |
根据当前状态,打开或关闭与该层绑定的弹出窗口。 |
isPopupOpen() |
boolean |
如果与该层绑定的弹出窗口当前已打开,则返回 |
setPopupContent( |
this |
设置绑定到该图层的弹出窗口的内容。 |
getPopup() |
Popup |
返回绑定到该图层的弹出窗口。 |
方法 | 返回值 | 说明 |
---|---|---|
bindTooltip( |
this |
将工具提示(tooltip)绑定到传入的图层 |
unbindTooltip() |
this |
移除之前用 |
openTooltip( |
this |
在指定的 |
closeTooltip() |
this |
如果该图层处于打开状态,则关闭绑定到该图层的工具提示。 |
toggleTooltip() |
this |
根据当前状态打开或关闭绑定到该图层的工具提示。 |
isTooltipOpen() |
boolean |
如果该层绑定的工具提示当前已打开,则返回 |
setTooltipContent( |
this |
设置绑定到该层的工具提示的内容。 |
getTooltip() |
Tooltip |
返回绑定到该层的工具提示。 |
方法 | 返回值 | 说明 |
---|---|---|
on( |
this |
为对象的特定事件类型添加一个监听函数( |
on( |
this |
添加一组 type/listener,例如 |
off( |
this |
移除一个先前添加的监听器函数。如果没有指定函数,它将从对象中删除该特定事件的所有监听器。请注意,如果您向 |
off( |
this |
删除一组 type/listener |
off() |
this |
移除该对象上所有事件的所有监听器。这包括隐含的附加事件。 |
fire( |
this |
触发指定类型的事件。您可以选择提供一个数据对象——侦听器函数的第一个参数将包含其属性,事件可以选择性地传播到事件父级。 |
listens( |
Boolean |
如果一个特定的事件类型有任何监听器连接到它,则返回 |
once(…) |
this |
与 |
addEventParent( |
this |
向父级 |
removeEventParent( |
this |
删除之前向父级 |
addEventListener(…) |
this |
同 |
removeEventListener(…) |
this |
同 |
clearAllEventListeners(…) |
this |
同 |
addOneTimeEventListener(…) |
this |
同 |
fireEvent(…) |
this |
同 |
hasEventListeners(…) |
Boolean |
Event objects 事件对象
每当从 Evented
继承的类触发事件时,都会使用事件参数调用侦听器函数,该参数是包含有关事件信息的普通对象。 例如:
map.on('click', function(ev) {
alert(ev.latlng); // ev is an event object (MouseEvent in this case)
});
可用信息取决于事件类型:
Event 事件
属性 | 类型 | 说明 |
---|---|---|
type |
String |
事件类型 (例如, 'click' )。 |
target |
Object |
触发该事件的对象。对于传播的事件,在传播链中的最后一个对象 触发事件的传播链中的最后一个对象。 |
sourceTarget |
Object |
最初触发事件的对象。 对于非传播事件,这将与 target 相同。 |
propagatedFrom |
Object |
对于传播的事件,最后一个将事件传播到其 事件的父对象。 |
layer |
Object |
废弃的。 与 propagatedFrom 相同。 |
KeyboardEvent 键盘事件
属性 | 类型 | 说明 |
---|---|---|
originalEvent |
DOMEvent |
触发此 Leaflet 事件的原始 DOM KeyboardEvent 。 |
属性 | 类型 | 说明 |
---|---|---|
type |
String |
事件类型(例如,'click' )。 |
target |
Object |
触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。 |
sourceTarget |
Object |
最初触发该事件的对象。对于非传播的事件,这将与 target 相同。 |
propagatedFrom |
Object |
对于传播的事件,将事件传播到其事件父级的最后一个对象。 |
layer |
Object |
已弃用。 与 propagatedFrom 相同。 |
MouseEvent 鼠标事件
属性 | 类型 | 说明 |
---|---|---|
latlng |
LatLng |
鼠标事件发生的地理坐标。 |
layerPoint |
Point |
鼠标事件发生点相对于地图图层的像素坐标。 |
containerPoint |
Point |
鼠标事件发生的点相对于地图容器的像素坐标。 |
originalEvent |
DOMEvent |
触发此 Leaflet 事件的原始 DOM MouseEvent 或 DOM TouchEvent 。 |
属性 | 类型 | 说明 |
---|---|---|
type |
String |
事件类型(例如,'click' )。 |
target |
Object |
触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。 |
sourceTarget |
Object |
最初触发该事件的对象。对于非传播的事件,这将与 target 相同。 |
propagatedFrom |
Object |
对于传播的事件,将事件传播到其事件父级的最后一个对象。 |
layer |
Object |
已弃用。 与 propagatedFrom 相同。 |
LocationEvent 位置事件
属性 | 类型 | 说明 |
---|---|---|
latlng |
LatLng |
检测到用户的地理位置。 |
bounds |
LatLngBounds |
用户所在区域的地理边界(相对于位置的准确性)。 |
accuracy |
Number |
以米为单位的位置精度。 |
altitude |
Number |
位置高于 WGS84 椭圆体的高度,以米为单位。 |
altitudeAccuracy |
Number |
以米为单位的高度精度。 |
heading |
Number |
以度为单位的行进方向,从真北顺时针计数。 |
speed |
Number |
当前速度(以米/秒为单位)。 |
timestamp |
Number |
获得位置的时间。 |
属性 | 类型 | 说明 |
---|---|---|
type |
String |
事件类型(例如,'click' )。 |
target |
Object |
触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。 |
sourceTarget |
Object |
最初触发该事件的对象。对于非传播的事件,这将与 target 相同。 |
propagatedFrom |
Object |
对于传播的事件,将事件传播到其事件父级的最后一个对象。 |
layer |
Object |
已弃用。 与 propagatedFrom 相同。 |
ErrorEvent 错误事件
属性 | 类型 | 说明 |
---|---|---|
message |
String |
错误信息。 |
code |
Number |
错误代码(如果适用)。 |
属性 | 类型 | 说明 |
---|---|---|
type |
String |
事件类型(例如,'click' )。 |
target |
Object |
触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。 |
sourceTarget |
Object |
最初触发该事件的对象。对于非传播的事件,这将与 target 相同。 |
propagatedFrom |
Object |
对于传播的事件,将事件传播到其事件父级的最后一个对象。 |
layer |
Object |
已弃用。 与 propagatedFrom 相同。 |
LayerEvent 图层事件
属性 | 类型 | 说明 |
---|---|---|
layer |
Layer |
添加或删除的图层。 |
属性 | 类型 | 说明 |
---|---|---|
type |
String |
事件类型(例如,'click' )。 |
target |
Object |
触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。 |
sourceTarget |
Object |
最初触发该事件的对象。对于非传播的事件,这将与 target 相同。 |
propagatedFrom |
Object |
对于传播的事件,将事件传播到其事件父级的最后一个对象。 |
LayersControlEvent 图层控制事件
属性 | 类型 | 说明 |
---|---|---|
layer |
Layer |
添加或删除的图层。 |
name |
String |
添加或删除的图层的名称。 |
属性 | 类型 | 说明 |
---|---|---|
type |
String |
事件类型(例如,'click' )。 |
target |
Object |
触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。 |
sourceTarget |
Object |
最初触发该事件的对象。对于非传播的事件,这将与 target 相同。 |
propagatedFrom |
Object |
对于传播的事件,将事件传播到其事件父级的最后一个对象。 |
TileEvent 瓦片事件
属性 | 类型 | 说明 |
---|---|---|
tile |
HTMLElement |
瓦片元素(图像)。 |
coords |
Point |
具有瓦片的 x 、 y 、 和 z (缩放级别) 坐标的点对象。 |
属性 | 类型 | 说明 |
---|---|---|
type |
String |
事件类型(例如,'click' )。 |
target |
Object |
触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。 |
sourceTarget |
Object |
最初触发该事件的对象。对于非传播的事件,这将与 target 相同。 |
propagatedFrom |
Object |
对于传播的事件,将事件传播到其事件父级的最后一个对象。 |
layer |
Object |
已弃用。 与 propagatedFrom 相同。 |
TileErrorEvent 瓦片错误事件
属性 | 类型 | 说明 |
---|---|---|
tile |
HTMLElement |
瓦片元素(图像)。 |
coords |
Point |
具有瓦片的 x 、 y 、 和 z (缩放级别) 坐标的点对象。 |
error |
* |
传递给瓦片的 done() 回调的错误信息。 |
属性 | 类型 | 说明 |
---|---|---|
type |
String |
事件类型(例如,'click' )。 |
target |
Object |
触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。 |
sourceTarget |
Object |
最初触发该事件的对象。对于非传播的事件,这将与 target 相同。 |
propagatedFrom |
Object |
对于传播的事件,将事件传播到其事件父级的最后一个对象。 |
layer |
Object |
已弃用。 与 propagatedFrom 相同。 |
ResizeEvent 调整尺寸事件
属性 | 类型 | 说明 |
---|---|---|
oldSize |
Point |
resize 事件之前的旧尺寸。 |
newSize |
Point |
resize 事件后的新尺寸。 |
属性 | 类型 | 说明 |
---|---|---|
type |
String |
事件类型(例如,'click' )。 |
target |
Object |
触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。 |
sourceTarget |
Object |
最初触发该事件的对象。对于非传播的事件,这将与 target 相同。 |
propagatedFrom |
Object |
对于传播的事件,将事件传播到其事件父级的最后一个对象。 |
layer |
Object |
已弃用。 与 propagatedFrom 相同。 |
GeoJSONEvent GeoJSON事件
属性 | 类型 | 说明 |
---|---|---|
layer |
Layer |
要添加到地图的 GeoJSON 要素的图层。 |
properties |
Object |
要素的 GeoJSON 属性。 |
geometryType |
String |
要素的 GeoJSON 几何类型。 |
id |
String |
要素的 GeoJSON ID(如果存在)。 |
属性 | 类型 | 说明 |
---|---|---|
type |
String |
事件类型(例如,'click' )。 |
target |
Object |
触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。 |
sourceTarget |
Object |
最初触发该事件的对象。对于非传播的事件,这将与 target 相同。 |
propagatedFrom |
Object |
对于传播的事件,将事件传播到其事件父级的最后一个对象。 |
PopupEvent 弹窗事件
属性 | 类型 | 说明 |
---|---|---|
popup |
Popup |
打开或关闭 Popup。 |
属性 | 类型 | 说明 |
---|---|---|
type |
String |
事件类型(例如,'click' )。 |
target |
Object |
触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。 |
sourceTarget |
Object |
最初触发该事件的对象。对于非传播的事件,这将与 target 相同。 |
propagatedFrom |
Object |
对于传播的事件,将事件传播到其事件父级的最后一个对象。 |
layer |
Object |
已弃用。 与 propagatedFrom 相同。 |
TooltipEvent 工具提示事件
属性 | 类型 | 说明 |
---|---|---|
tooltip |
Tooltip |
打开或关闭 Tooltip。 |
属性 | 类型 | 说明 |
---|---|---|
type |
String |
事件类型(例如,'click' )。 |
target |
Object |
触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。 |
sourceTarget |
Object |
最初触发该事件的对象。对于非传播的事件,这将与 target 相同。 |
propagatedFrom |
Object |
对于传播的事件,将事件传播到其事件父级的最后一个对象。 |
layer |
Object |
已弃用。 与 propagatedFrom 相同。 |
DragEndEvent 拖动结束事件
属性 | 类型 | 说明 |
---|---|---|
distance |
Number |
可拖动元素移动的距离(以像素为单位)。 |
属性 | 类型 | 说明 |
---|---|---|
type |
String |
事件类型(例如,'click' )。 |
target |
Object |
触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。 |
sourceTarget |
Object |
最初触发该事件的对象。对于非传播的事件,这将与 target 相同。 |
propagatedFrom |
Object |
对于传播的事件,将事件传播到其事件父级的最后一个对象。 |
layer |
Object |
已弃用。 与 propagatedFrom 相同。 |
ZoomAnimEvent 缩放动画事件
属性 | 类型 | 说明 |
---|---|---|
center |
LatLng |
当前地图的中心 |
zoom |
Number |
地图的当前缩放级别 |
noUpdate |
Boolean |
由于此事件,图层是否应更新其内容 |
属性 | 类型 | 说明 |
---|---|---|
type |
String |
事件类型(例如,'click' )。 |
target |
Object |
触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。 |
sourceTarget |
Object |
最初触发该事件的对象。对于非传播的事件,这将与 target 相同。 |
propagatedFrom |
Object |
对于传播的事件,将事件传播到其事件父级的最后一个对象。 |
layer |
Object |
已弃用。 与 propagatedFrom 相同。 |
Global Switches 全局开关
全局开关是为极少数情况创建的,即使它是特定的浏览器功能,Leaflet 也不会检测到 那里。 您需要在页面上包含 Leaflet 之前,将 switch 作为全局变量设置为 true 像这样:
<script>L_NO_TOUCH = true;</script>
<script src="leaflet.js"></script>
Switch | 说明 |
---|---|
L_NO_TOUCH |
强制 Leaflet 不使用触摸事件,即使它检测到它们。 |
L_DISABLE_3D |
强制 Leaflet 不使用硬件加速的 CSS 3D 转换进行定位(这可能会在某些罕见的环境中导致故障),即使它们受支持。 |
noConflict 原始值
这个方法将 L
全局变量恢复到Leaflet包含之前的原始值,并返回真正的Leaflet命名空间,所以你可以把它放在其他地方,像这样:
<script src='libs/l.js'>
<!-- L 指向某个其他库 -->
<script src='leaflet.js'>
<!-- 您包含 Leaflet,它将 L 变量替换为 Leaflet 命名空间 -->
<script>
var Leaflet = L.noConflict();
// 现在 L 再次指向另一个库,您可以使用 Leaflet.Map 等。
</script>
version 版本号
代表正在使用的 Leaflet 版本信息。
L.version; // contains "1.0.0" (或当前使用的任何版本)
map.getPane
或map.getPanes
方法访问窗格。 可以使用map.createPane
方法创建新窗格。 每个地图都有以下默认窗格,它们的唯一区别仅在于 zIndex。