Leaflet API - Marker 标记 中文文档
本文介绍下 Leaflet 中 Marker 标记 API的详细使用说明。
Marker 标记 API 调用方法
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 )。
|
其他API
Leaflet中文API文档手机(v.19版本)参考:《Leaflet中文API文档手机(v.19版本)》
相关阅读
声明
1.本文所分享的所有需要用户下载使用的内容(包括但不限于软件、数据、图片)来自于网络或者麻辣GIS粉丝自行分享,版权归该下载资源的合法拥有者所有,如有侵权请第一时间联系本站删除。
2.下载内容仅限个人学习使用,请切勿用作商用等其他用途,否则后果自负。
addTo()
、remove()
、类似 bindPopup() 的 popup 方法之外,你还可以使用以下方法: