用法示例 示例

// 使用id为map的div容器初始化地图,同时指定地图的中心点和缩放级别
    BM.Config.HTTP_URL = '';
var map = BM.map('map','mapid', {
    center: [51.505, -0.09],
    zoom: 13
});

创建

描述
BM.map( <String> id, <String> mapid, <Map options> options?) 给定<div>元素的DOM ID 以及可选的对象文字的实例化地图对象Map options
BM.map( <HTMLElement> el, <String> mapid, <Map options> options?) 给定<div>HTML元素实例和可选的对象文字实例化地图对象Map options

选项

配置 类型 默认 描述
preferCanvas Boolean false 是否Path应在渲染Canvas渲染s 默认情况下,所有Paths都在SVG渲染器中呈现。

控制选项

配置 类型 默认 描述
attributionControl Boolean true 默认情况下是否将归因控件添加到地图中。
zoomControl Boolean true 默认情况下是否将缩放控件添加到地图中。

交互选项

配置 类型 默认 描述
closePopupOnClick Boolean true false如果您不希望在用户单击地图时关闭弹出窗口请将其设置为
zoomSnap Number 1 强制地图的缩放级别始终为此的倍数,尤其是在fitBounds()缩放或缩放后。默认情况下,缩放级别会捕捉到最接近的整数; 较低的值(例如0.50.1)允许更大的粒度。0 表示缩放后的缩放级别fitBounds或者缩放缩放。
zoomDelta Number 1 控制地图的缩放级别多少后改变 zoomIn()zoomOut(),压制+-在键盘上,或者使用缩放控件小于1(例如0.5)的允许更大的粒度。
trackResize Boolean true 地图是否自动处理浏览器窗口调整大小以更新自身。
boxZoom Boolean true 是否可以在按住Shift键的同时通过拖动鼠标将地图缩放到指定的矩形区域。
doubleClickZoom Boolean|String true 是否可以通过双击放大地图并通过双击同时按住缩放来缩小地图。如果通过 'center',双击缩放将缩放到视图的中心,无论鼠标位于何处。
dragging Boolean true 是否可以使用鼠标/触摸拖动地图。

映射状态选项

配置 类型 默认 描述
crs CRS BM.CRS.EPSG3857 要使用坐标参考系统如果您不确定这意味着什么,请不要更改此项。
center LatLng undefined 地图的初始地理中心
zoom Number undefined 初始地图缩放级别
minZoom Number * 地图的最小缩放级别。如果未指定且至少有一个GridLayerTileLayer在地图中,minZoom则将使用其中最低的选项。
maxZoom Number * 地图的最大缩放级别。如果未指定且至少有一个GridLayerTileLayer在地图中,maxZoom则将使用其中最高的选项。
layers Layer[] [] 最初将添加到地图的图层数组
maxBounds LatLngBounds null 设置此选项后,地图会将视图限制为给定的地理边界,如果用户尝试在视图外平移,则会将用户反弹回来。要动态设置限制,请使用 setMaxBounds方法。
renderer Renderer * 在地图上绘制矢量图层的默认方法。BM.SVGBM.Canvas默认情况下取决于浏览器支持。

动画选项

配置 类型 默认 描述
zoomAnimation Boolean true 是否启用地图缩放动画。默认情况下,除了Android之外,所有支持CSS3过渡的浏览器都启用了它。
zoomAnimationThreshold Number 4 如果缩放差异超过此值,则不会设置缩放动画。
fadeAnimation Boolean true 是否启用了平铺淡入淡出动画。默认情况下,除了Android之外,所有支持CSS3过渡的浏览器都启用了它。
markerZoomAnimation Boolean true 标记是否使用缩放动画为其缩放设置动画,如果禁用,它们将在动画的长度内消失。默认情况下,除了Android之外,所有支持CSS3过渡的浏览器都启用了它。
transform3DLimit Number 2^23 定义CSS转换变换的最大大小。除非Web浏览器在执行大型操作后将图层放在错误的位置,否则不应更改默认值panBy

平移惯性选项

配置 类型 默认 描述
inertia Boolean * 如果启用,则平移地图将具有惯性效果,其中地图在拖动时构建动量并且继续在相同方向上移动一段时间。在触摸设备上感觉特别好。除非在旧的Android设备上运行,否则默认启用。
inertiaDeceleration Number 3000 惯性运动减速的速率,以像素/秒为单位。
inertiaMaxSpeed Number Infinity 惯性运动的最大速度,以像素/秒为单位。
easeLinearity Number 0.2
worldCopyJump Boolean false 启用此选项后,地图会跟踪您平移到世界的另一个“副本”并无缝跳转到原始地图,以便所有叠加层(如标记和矢量图层)仍然可见。
maxBoundsViscosity Number 0.0 如果maxBounds设置,则此选项将控制拖动地图时边界的实体程度。默认值0.0允许用户以正常速度拖动边界外,较高的值将减慢地图拖动外部边界,1.0并使边界完全固定,防止用户拖出边界外。

键盘导航选项

配置 类型 默认 描述
keyboard Boolean true 使地图可聚焦,并允许用户使用键盘箭头和+/ -导航地图
keyboardPanDelta Number 80 按箭头键时平移的像素数量。

鼠标滚轮选项

配置 类型 默认 描述
scrollWheelZoom Boolean|String true 是否可以使用鼠标滚轮缩放地图。如果通过'center',它将缩放到视图的中心,无论鼠标在哪里。
wheelDebounceTime Number 40 限制车轮可以发射的速率(以毫秒为单位)。默认情况下,用户不能每40毫秒更频繁地通过滚轮进行缩放。
wheelPxPerZoomLevel Number 60 多少个滚动像素(由BM.DomEvent.getWheelDelta报告)表示更改一个完整缩放级别。较小的值将使轮缩放更快(反之亦然)。

触摸互动选项

配置 类型 默认 描述
tap Boolean true 支持移动黑客支持即时点击(在iOS / Android上修复200毫秒点击延迟)和触摸保持(触发contextmenu事件)。
tapTolerance Number 15 用户在触摸期间可以移动手指的最大像素数,以将其视为有效的抽头。
touchZoom Boolean|String * 是否可以通过用两个手指触摸拖动来缩放地图。如果通过'center',它将缩放到视图的中心,无论触摸事件(手指)在哪里。支持具有触摸功能的Web浏览器,但旧的Androids除外。
bounceAtZoomLimits Boolean true 如果您不希望地图缩放超过最小/最大缩放,然后在缩放缩放时反弹,则将其设置为false。

活动

图层事件

事件 数据 描述
baselayerchange LayersControlEvent 通过图层控件更改基础图层时触发
overlayadd LayersControlEvent 通过图层控件选择叠加层时触发
overlayremove LayersControlEvent 通过图层控件取消选择叠加层时触发
layeradd LayerEvent 将新图层添加到地图时触发。
layerremove LayerEvent 从地图中删除某个图层时触发

映射状态更改事件

事件 数据 描述
zoomlevelschange Event 由于添加或删除图层而改变地图上的缩放级别数时触发。
resize ResizeEvent 调整地图大小时触发。
unload Event 使用remove方法销毁地图时触发
viewreset Event 当地图需要重绘其内容时触发(这通常发生在地图缩放或加载)。对于创建自定义叠加层非常有用。
load Event 初始化地图时(第一次设置中心和缩放时)触发。
zoomstart Event 当地图缩放即将改变时触发(例如在缩放动画之前)。
movestart Event 在地图视图开始更改时触发(例如,用户开始拖动地图)。
zoom Event 在缩放级别的任何变化期间反复触发,包括缩放和飞行动画。
move Event 在地图的任何移动过程中反复发射,包括平移和飞行动画。
zoomend Event 在地图发生变化后,在任何动画之后触发。
moveend Event 当地图中心停止变化时触发(例如,用户停止拖动地图)。

弹出事件

事件 数据 描述
popupopen PopupEvent 在地图中打开弹出窗口时触发
popupclose PopupEvent 关闭地图中的弹出窗口时触发
autopanstart Event 打开弹出窗口时地图开始自动平移时触发。

工具提示事件

事件 数据 描述
tooltipopen TooltipEvent 在地图中打开工具提示时触发。
tooltipclose TooltipEvent 关闭地图中的工具提示时触发。

位置活动

事件 数据 描述
locationerror ErrorEvent 地理定位(使用该locate方法)失败时触发
locationfound LocationEvent 地理定位(使用locate方法)成功时触发

互动活动

事件 数据 描述
click MouseEvent 用户单击(或点击)地图时触发。
dblclick MouseEvent 当用户双击(或双击)地图时触发。
mousedown MouseEvent 当用户在地图上按下鼠标按钮时触发。
mouseup MouseEvent 当用户在地图上释放鼠标按钮时触发。
mouseover MouseEvent 鼠标进入地图时触发。
mouseout MouseEvent 鼠标离开地图时触发。
mousemove MouseEvent 鼠标在地图上移动时触发。
contextmenu MouseEvent 当用户在地图上按下鼠标右键时触发,防止默认浏览器上下文菜单显示此事件是否有侦听器。当用户持续一次触摸(也称为长按)时,也会在手机上触发。
keypress KeyboardEvent 当用户在聚焦地图时从键盘按下键时触发。
preclick MouseEvent 鼠标在地图上单击之前触发(有时在任何现有点击处理程序开始运行之前需要点击某些内容时有用)。

其他方法

事件 数据 描述
zoomanim ZoomAnimEvent 在缩放动画的每一帧上都会被触发

方法

方法 返回 描述
getRenderer( <Path> layer) Renderer

返回Renderer应该用于呈现给定 的实例Path它将确保renderer地图和路径选项得到遵守,并且渲染器确实存在于地图上。

层和控件方法

方法 返回 描述
addControl( <Control> control) this

添加控件至地图视图

removeControl( <Control> control) this

移除控件

addLayer( <Layer> layer) this

添加层至地图视图

removeLayer( <Layer> layer) this

移除层

hasLayer( <Layer> layer) Boolean

查询是否有指定的层

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

迭代映射的层,可选地指定迭代器函数的上下文。

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

关闭先前打开时打开指定的弹出窗口(以确保一次只能打开一个以获得可用性)。

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

创建具有指定内容和选项的弹出窗口,并在地图上的给定点中打开它。

closePopup( <Popup> popup?) this

关闭先前使用openPopup(或给定的)打开的弹出窗口

openTooltip( <Tooltip> tooltip) this

打开指定的工具提示。

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

创建具有指定内容和选项的工具提示并将其打开。

closeTooltip( <Tooltip> tooltip?) this

关闭作为参数给出的工具提示。

地图状态修改

方法 返回 描述
setView( <LatLng> center, <Number> zoom, <Zoom/pan options> options?) this

设置地图位置(地理位置和缩放级别))

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

设置缩放级别

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

通过deltazoomDelta默认情况下)增加地图的缩放比例

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

通过deltazoomDelta默认情况下)减小地图的缩放比例

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

缩放地图,同时使地图上的指定地理点保持静止(例如,在内部用于滚动缩放和双击缩放)。

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

放大地图,同时保持地图上的指定像素(相对于左上角)静止不动。

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

限定地图可移动区域

fitWorld( <fitBounds options> options?) this

设置一个地图视图,该视图主要包含可能具有最大缩放级别的整个世界。

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

移动地图到新的中心点

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

按给定数量的像素(动画)平移地图。

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

移动至新的位置(中心和缩放)

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

平滑移动值新的位置,, flyTo但是接受一个类似于的边界参数fitBounds

setMaxBounds( <Bounds> bounds) this

将地图视图限制为给定边界(请参阅maxBounds选项)。

setMinZoom( <Number> zoom) this

设置最小可用缩放级别(参照minZoom配置)

setMaxZoom( <Number> zoom) this

设置最大可用缩放级别(参照maxZoom配置)

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

将地图平移到位于给定边界内的最近视图(如果它还没有),使用特定选项(如果有)控制动画。

invalidateSize( <Zoom/pan options> options) this

检查地图容器大小是否更改并更新地图(如果是这样) - 在动态更改地图大小后调用它,默认情况下也为动画设置动画。如果options.panfalse,则不会发生平移。如果options.debounceMoveendtrue,它将延迟moveend事件,以便即使连续多次调用该方法也不会经常发生。

invalidateSize( <Boolean> animate) this

检查地图容器大小是否更改并更新地图(如果是这样) - 在动态更改地图大小后调用它,默认情况下也为动画设置动画。

stop() this

停止当前运行的动画(panToflyTo

地理定位方法

方法 返回 描述
locate( <Locate options> options?) this

尝试使用Geolocation API定位用户,触发包含locationfound 成功位置数据或locationerror失败事件的事件,并可选择将地图视图设置为用户关于检测准确性的位置(如果地理位置失败,则设置为世界视图)。请注意,如果您的网页未使用HTTPS,则此方法将在现代浏览器中失败(Chrome 50及更高版本)有关Locate options详细信息,请参阅

stopLocate() this

停止观看之前发起的位置map.locate({watch: true}) ,如果调用了map.locate,则中止重置地图视图 {setView: true}

其它方法

方法 返回 描述
addHandler( <String> name, <Function> HandlerClass) this

Handler在给定其名称和构造函数的情况下,向地图添加新内容

remove() this

销毁地图并清楚所有相关的事件监听器。

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

如果已存在,则创建具有给定名称的新地图窗格,然后返回该窗格container如果未设置,窗格将创建为主地图窗格的子窗口或子窗口。

getPane( <String|HTMLElement> pane) HTMLElement

给出其名称或其HTML元素(其标识)地图窗格

getPanes() Object

返回一个普通对象,其中包含所有窗格的名称作为键,窗格作为值。

getContainer() HTMLElement

返回包含地图的HTML元素。

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

fn使用视图(中心和缩放)和至少一个图层初始化地图时运行给定函数,或者如果已经初始化,则立即运行给定函数,可选地传递函数上下文。

获取地图状态方法

方法 返回 描述
getCenter() LatLng

获取当前中心点

getZoom() Number

获取当前缩放级别

getBounds() LatLngBounds

获取当前视图可见边界

getMinZoom() Number

获取当前最小缩放级别(如果在minZoom地图或任何图层选项中设置),或0默认情况下。

getMaxZoom() Number

获取当前最大缩放级别(如果在maxZoom地图或任何图层选项中设置)。

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

返回给定边界完全适合地图视图的最大缩放级别。如果inside(可选)设置为true,则该方法将返回地图视图完全适合给定边界的最小缩放级别。

getSize() Point

获取当前容器大小(px单位)

getPixelBounds() Bounds

返回投影像素坐标中当前地图视图的边界(有时在图层和叠加层实现中很有用)。

getPixelOrigin() Point

返回地图图层左上角点的投影像素坐标(在自定义图层和叠加层实现中很有用)。

getPixelWorldBounds( <Number> zoom?) Bounds

返回缩放级别的像素坐标中的世界边界zoom如果zoom省略,则使用地图的当前缩放级别。

转换方法

方法 返回 描述
getZoomScale( <Number> toZoom, <Number> fromZoom) Number

返回要应用于从缩放级别fromZoom的地图过渡的比例因子 toZoom内部用于帮助缩放动画。

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

返回地图最终的缩放级别,如果它处于fromZoom 等级并且所有内容都按比例缩放scale逆的 getZoomScale

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

项目的地理坐标LatLng根据地图的CRS的投影,则根据其刻度zoom和CRS的 Transformation结果是相对于CRS原点的像素坐标。

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

逆的project

layerPointToLatLng( <Point> point) LatLng

给定相对于原点像素的像素坐标,返回相应的地理坐标(对于当前缩放级别)。

latLngToLayerPoint( <LatLng> latlng) Point

给定地理坐标,返回相对于原始像素的对应像素坐标

wrapLatLng( <LatLng> latlng) LatLng

如果它们在CRS的边界之外,则返回一个LatLngwhere lat并且lng已根据地图的CRS wrapLatwrapLng属性进行包装默认情况下,这意味着经度缠绕在日期线上,因此其值介于-180和+180度之间。

wrapLatLngBounds( <LatLngBounds> bounds) LatLngBounds

返回LatLngBounds与给定大小相同的大小,确保其中心位于CRS的边界内。默认情况下,这意味着中心经度围绕日期线缠绕,因此其值介于-180和+180度之间,并且大多数边界与CRS的边界重叠。

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

根据地图的CRS返回两个地理坐标之间的距离。默认情况下,它以米为单位测量距离

containerPointToLayerPoint( <Point> point) Point

给定相对于地图容器的像素坐标,返回相对于原始像素的对应像素坐标

layerPointToContainerPoint( <Point> point) Point

给定相对于原始像素的像素坐标,返回相对于地图容器的对应像素坐标。

containerPointToLatLng( <Point> point) LatLng

给定相对于地图容器的像素坐标,返回相应的地理坐标(对于当前缩放级别)。

latLngToContainerPoint( <LatLng> latlng) Point

给定地理坐标,返回相对于地图容器的对应像素坐标。

mouseEventToContainerPoint( <MouseEvent> ev) Point

给定MouseEvent对象,返回相对于发生事件的地图容器的像素坐标。

mouseEventToLayerPoint( <MouseEvent> ev) Point

给定MouseEvent对象,返回相对于发生事件原点像素的像素坐标

mouseEventToLatLng( <MouseEvent> ev) LatLng

给定MouseEvent对象,返回事件发生的地理坐标。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

属性

处理程序

属性 类型 描述
boxZoom Handler 框(用鼠标移动拖动)缩放处理程序。
doubleClickZoom Handler 双击缩放处理程序。
dragging Handler 映射拖动处理程序(通过鼠标和触摸)。
keyboard Handler 键盘导航处理程序
scrollWheelZoom Handler 滚轮变焦处理程序。
tap Handler 移动触摸黑客(快速点击和触摸保持)处理程序。
touchZoom Handler 触摸变焦处理程序

地图窗格

窗格是用于控制地图上图层排序的DOM元素。您可以使用map.getPanemap.getPanes方法访问窗格可以使用该map.createPane方法创建新窗格 每个地图都有以下默认窗格,这些窗格仅在zIndex中有所不同。
窗格 类型 Z-指数 描述
mapPane HTMLElement 'auto' 包含所有其他地图窗格的窗格
tilePane HTMLElement 200 适用于GridLayers和TileLayers的窗格
overlayPane HTMLElement 400 矢量窗格(Paths,Polylines和Polygons),ImageOverlays和VideoOverlays
shadowPane HTMLElement 500 叠加阴影的窗格(例如Marker阴影)
markerPane HTMLElement 600 窗格IconMarker小号
tooltipPane HTMLElement 650 Pane for Tooltips。
popupPane HTMLElement 700 Pane for Popups。

找到选项

一些地理位置方法Map在取options参数。这是一个普通的javascript对象,包含以下可选组件:
配置 类型 默认 描述
watch Boolean false 如果true,使用W3C watchPosition方法开始连续观察位置变化(而不是检测一次)您可以稍后停止使用map.stopLocate()方法观看
setView Boolean false 如果true,根据检测准确性自动将地图视图设置为用户位置,或者如果地理位置失败则自动将地图视图设置为世界视图。
maxZoom Number Infinity 使用setView选项时自动视图设置的最大缩放
timeout Number 10000 在触发locationerror事件之前等待地理定位响应的毫秒数
maximumAge Number 0 检测到的位置的最大年龄。如果小于自上次地理位置响应以来经过的毫秒数,locate则将返回缓存位置。
enableHighAccuracy Boolean false 实现高精度,请参阅W3C规范中的说明

缩放选项

Map修改缩放级别的一些方法采用options 参数。这是一个普通的javascript对象,包含以下可选组件:
配置 类型 默认 描述
animate Boolean 如果未指定,如果缩放原点位于当前视图内,则会发生缩放动画。如果true,地图将尝试动画缩放,而忽略缩放原点的位置。设置false将使其始终在没有动画的情况下完全重置视图。

平移选项

Map修改地图中心的一些方法采用options 参数。这是一个普通的javascript对象,包含以下可选组件:
配置 类型 默认 描述
animate Boolean 如果true,如果可能的话,平移将始终是动画。如果false,它不会动画平移,如果平移超过屏幕,则重置地图视图,或者仅为地图窗格设置新的偏移(除了panBy 后者总是如此)。
duration Number 0.25 动画平移的持续时间,以秒为单位。
easeLinearity Number 0.25 平移动画缓动的曲率因子(Cubic Bezier曲线的第三个参数 )。1.0表示线性动画,数字越小,曲线越弯曲。
noMoveStart Boolean false 如果true,平移不会movestart在启动时触发事件(内部用于平移惯性)。

缩放/平移选项

配置 类型 默认 描述
animate Boolean 如果未指定,如果缩放原点位于当前视图内,则会发生缩放动画。如果true,地图将尝试动画缩放,而忽略缩放原点的位置。设置false将使其始终在没有动画的情况下完全重置视图。
配置 类型 默认 描述
duration Number 0.25 动画平移的持续时间,以秒为单位。
easeLinearity Number 0.25 平移动画缓动的曲率因子(Cubic Bezier曲线的第三个参数 )。1.0表示线性动画,数字越小,曲线越弯曲。
noMoveStart Boolean false 如果true,平移不会movestart在启动时触发事件(内部用于平移惯性)。

FitBounds选项

配置 类型 默认 描述
paddingTopLeft Point [0, 0] 设置在将视图设置为适合边界时不应考虑的地图容器左上角的填充量。如果您在地图上有一些控件叠加层(如侧边栏)并且您不希望它们遮挡您要缩放的对象,则非常有用。
paddingBottomRight Point [0, 0] 地图右下角也是如此。
padding Point [0, 0] 相当于将左上角和右下角填充设置为相同的值。
maxZoom Number null 要使用的最大缩放比例。
配置 类型 默认 描述
animate Boolean 如果未指定,如果缩放原点位于当前视图内,则会发生缩放动画。如果true,地图将尝试动画缩放,而忽略缩放原点的位置。设置false将使其始终在没有动画的情况下完全重置视图。
配置 类型 默认 描述
duration Number 0.25 动画平移的持续时间,以秒为单位。
easeLinearity Number 0.25 平移动画缓动的曲率因子(Cubic Bezier曲线的第三个参数 )。1.0表示线性动画,数字越小,曲线越弯曲。
noMoveStart Boolean false 如果true,平移不会movestart在启动时触发事件(内部用于平移惯性)。

标记

BM.Marker用于在地图上显示可点击/可拖动的图标。延伸Layer

用法示例

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

创建

描述
BM.marker( <LatLng> latlng, <Marker options> options?) 给定地理点和可选的选项对象实例化Marker对象。

选项

配置 类型 默认 描述
icon Icon * 用于渲染标记的图标实例。有关如何自定义标记图标的详细信息,请参阅图标文档如果未指定,BM.Icon.Default则使用公共实例
draggable Boolean false 标记是否可以通过鼠标/触摸进行拖动。
autoPan Boolean false true如果您希望地图在标记到达边缘时执行平移动画请将其设置为
autoPanPadding Point Point(50, 50) 相当于将左上角和右下角的autopan填充设置为相同的值。
autoPanSpeed Number 10 地图应移动的像素数。
keyboard Boolean true 是否可以使用键盘选中标记,然后按Enter键单击。
title String '' 标记悬停时显示的浏览器工具提示的文本(默认情况下不是工具提示)。
alt String '' alt图标图像属性的文本(对辅助功能非常有用)。
zIndexOffset Number 0 默认情况下,标记图像zIndex会根据其纬度自动设置。如果要将标记放在所有其他标记(或下方)之上,请指定高值1000(或分别为高负值),请使用此选项
opacity Number 1.0 标记的不透明度。
riseOnHover Boolean false 如果true,当您将鼠标悬停在其上时,标记将会显示在其他标记之上。
riseOffset Number 250 用于该riseOnHover功能的z-index偏移量
pane String 'markerPane' Map pane 将添加标记图标的位置。
bubblingMouseEvents Boolean false 何时true,此标记上的鼠标事件将在地图上触发相同的事件(除非BM.DomEvent.stopPropagation使用)。
配置 类型 默认 描述
interactive Boolean true 如果false,图层不会发出鼠标事件,并将作为底层地图的一部分。
配置 类型 默认 描述
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

除了共享层的方法addTo(),并remove()弹出方法等bindPopup()也可以使用以下方法:
事件 数据 描述
move Event setLatLng通过拖动移动标记时触发新旧坐标包含在事件参数中oldLatLng,如latlng

拖动事件

事件 数据 描述
dragstart Event 用户开始拖动标记时触发。
movestart Event 标记开始移动时触发(因为拖动)。
drag Event 用户拖动标记时反复触发。
dragend DragEndEvent 用户停止拖动标记时触发。
moveend Event 当标记停止移动(因拖动)时触发。
事件 数据 描述
click MouseEvent 用户单击(或点击)图层时触发。
dblclick MouseEvent 当用户双击(或双击)图层时触发。
mousedown MouseEvent 当用户在图层上按下鼠标按钮时触发。
mouseup MouseEvent 当用户释放在图层上按下的鼠标按钮时触发。
mouseover MouseEvent 鼠标进入图层时触发。
mouseout MouseEvent 当鼠标离开图层时触发。
contextmenu MouseEvent 当用户右键单击图层时触发,防止默认浏览器上下文菜单显示此事件是否有侦听器。当用户持续一次触摸(也称为长按)时,也会在手机上触发。
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
toGeoJSON() Object

返回一个 GeoJSON标记的表示(作为GeoJSON Point特征)。

getLatLng() LatLng

返回标记的当前地理位置。

setLatLng( <LatLng> latlng) this

将标记位置更改为给定点。

setZIndexOffset( <Number> offset) this

更改标记zIndex偏移量

setIcon( <Icon> icon) this

更改标记图标。

setOpacity( <Number> opacity) this

更改标记的不透明度。

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

属性

交互处理程序

交互处理程序是标记实例的属性,允许您在运行时控制交互行为,启用或禁用某些功能,如拖动(请参阅Handler方法)。例:
marker.dragging.disable();
属性 类型 描述
dragging Handler 标记拖动处理程序(通过鼠标和触摸)。仅在标记位于地图上时有效(否则设置marker.options.draggable)。

用于在地图的某些位置打开弹出窗口。使用Map.openPopup打开弹出窗口,同时确保一次只打开一个弹出窗口(建议用于可用性),或使用Map.addLayer打开任意数量的弹出窗口

如果你想将弹出窗口绑定到标记点击然后打开它,那很简单:

marker.bindPopup(popupContent).openPopup();

折线之类的路径叠加也有一个bindPopup方法。这是在地图上打开弹出窗口的更复杂方法:

var popup = BM.popup()
    .setLatLng(latlng)
    .setContent('<p>Hello world!<br />This is a nice popup.</p>')
    .openOn(map);
描述
配置 类型 默认 描述
配置 类型 默认 描述
配置 类型 默认 描述

活动

事件 数据 描述
事件 数据 描述
事件 数据 描述
方法 返回 描述
方法 返回 描述
方法 返回 描述
方法 返回 描述
方法 返回 描述

提示

用于在地图图层上显示小文本。

用法示例

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

关于工具提示偏移的注意事项。

  • offset工具提示选项:它默认为[0,0],这是特定于一个工具提示。添加正x偏移以将工具提示向右移动,并使用正y偏移将其移动到底部。负数将移至左侧和顶部。
  • tooltipAnchor图标选项:这只会被视为标记。如果使用自定义图标,则应调整此值。

创建

描述
BM.tooltip( <Tooltip options> options?, <Layer> source?) 实例化一个Tooltip对象,给定一个options描述其外观和位置的可选source对象,以及一个可选对象,用于标记工具提示,并引用它引用的Layer。

选项

配置 类型 默认 描述
pane String 'tooltipPane' Map pane 将添加工具提示的位置。
offset Point Point(0, 0) 工具提示位置的可选偏移量。
direction String 'auto' 方向在哪里打开工具提示。可能的值有:rightlefttopbottomcenterautoauto将之间进行动态切换rightleft根据地图上的工具提示位置。
permanent Boolean false 是永久打开工具提示还是仅在鼠标悬停时打开工具提示。
sticky Boolean false 如果为true,则工具提示将跟随鼠标而不是固定在要素中心。
interactive Boolean false 如果为true,则工具提示将侦听要素事件。
opacity Number 0.9 工具提示容器不透明度。
配置 类型 默认 描述
className String '' 要分配给弹出窗口的自定义CSS类名称。
配置 类型 默认 描述
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

TileLayer

用于在地图上加载和显示切片图层。延伸GridLayer

用法示例

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

网址模板

以下形式的字符串:

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

{s}装置可用的子域中的一个(顺序地用于帮助每个域限制浏览器并行请求;子域值在选项中指定; abc通过默认,可省略),{z}-缩放级别,{x}以及{y}-瓷砖坐标。{r}可用于将“@ 2x”添加到URL以加载视网膜图块。您可以在模板中使用自定义键,这些键将从TileLayer选项中进行评估,如下所示:

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

创建

扩展方法

描述
BM.tilelayer( <String> urlTemplate, <TileLayer options> options?) 在给定a URL template和可选的options对象的情况下实例化tile图层对象。

选项

配置 类型 默认 描述
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 false 如果为true,则所有切片的crossOrigin属性都将设置为''。如果要访问切片像素数据,则需要这样做。
配置 类型 默认 描述
tileSize Number|Point 256 网格中瓷砖的宽度和高度。如果宽度和高度相等,则使用数字,BM.point(width, height)否则。
opacity Number 1.0 瓷砖的不透明度。可以在createTile()函数中使用。
updateWhenIdle Boolean (depends) 仅在平移结束时加载新图块。 true默认情况下在移动浏览器上,以避免过多请求并保持平滑导航。 false否则,为了平移期间显示新的图块,因为keepBuffer在桌面浏览器中很容易在该选项之外平移
updateWhenZooming Boolean true 默认情况下,平滑缩放动画(在触摸缩放期间或a 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 该层是否包裹在antimeridian周围。如果true,GridLayer只会以低缩放级别显示一次。当地图CRS没有环绕时没有效果可与之配合使用bounds 防止请求超出CRS限制的磁贴。
pane String 'tilePane' Map pane 将添加网格图层的位置。
className String '' 要分配给切片图层的自定义类名。默认为空。
keepBuffer Number 2 平移地图时,请在卸载之前保留此许多行和列的切片。
配置 类型 默认 描述
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
loading Event 网格图层开始加载图块时触发。
tileunload TileEvent 在移除瓷砖时触发(例如,当瓷砖离开屏幕时)。
tileloadstart TileEvent 请求磁贴并在开始加载时触发。
tileerror TileErrorEvent 加载磁贴时出错。
tileload TileEvent 当瓷砖加载时触发。
load Event 当网格图层加载所有可见的图块时触发。
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
setUrl( <String> url, <Boolean> noRedraw?) this

更新图层的URL模板并重新绘制它(除非noRedraw设置为true)。

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

仅在内部调用,覆盖GridLayer createTile() 以返回具有<img>给定的适当图像URL HTML元素coordsdone 在分片已经加载回调被调用。

扩展方法

图层扩展TileLayer可能会重新实现以下方法。
方法 返回 描述
getTileUrl( <Object> coords) String

仅在内部调用,返回给定其坐标的tile的URL。扩展类TileLayer可以覆盖此函数以提供自定义切片URL命名方案。

方法 返回 描述
bringToFront() this

将切片图层置于所有切片图层的顶部。

bringToBack() this

将切片图层置于所有切片图层的底部。

getContainer() HTMLElement

返回包含此图层的切片的HTML元素。

setOpacity( <Number> opacity) this

更改网格图层不透明度

setZIndex( <Number> zIndex) this

更改网格图层zIndex

isLoading() Boolean

返回true如果在网格层有块尚未加载完毕。

redraw() this

使图层清除所有图块并再次请求它们。

getTileSize() Point

tileSize选项规范化为一个点。createTile()方法使用。

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

用于在地图上将WMS服务显示为切片图层。延伸TileLayer

用法示例

var nexrad = BM.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"
});

创建

描述
BM.tileLayer.wms( <String> baseUrl, <TileLayer.WMS options> options) 给定WMS服务的基本URL和WMS参数/选项对象,实例化WMS切片层对象。

选项

如果使用此处未记录的任何自定义选项,它们将作为每个请求URL中的额外参数发送到WMS服务器。这对于非标准供应商WMS参数非常有用
配置 类型 默认 描述
layers String '' (必需)要显示的以逗号分隔的WMS图层列表。
styles String '' 以逗号分隔的WMS样式列表。
format String 'image/jpeg' WMS图像格式('image/png'用于具有透明度的图层)。
transparent Boolean false 如果true,WMS服务将返回具有透明度的图像。
version String '1.1.1' 要使用的WMS服务的版本
crs CRS null 坐标参考系统用于WMS请求,默认为映射CRS。如果您不确定这意味着什么,请不要更改此项。
uppercase Boolean false 如果true,WMS请求参数键将为大写。
配置 类型 默认 描述
minZoom Number 0 显示此图层的最小缩放级别(包括)。
maxZoom Number 18 此图层将显示的最大缩放级别(包括)。
subdomains String|String[] 'abc' 磁贴服务的子域。可以以一个字符串(每个字母是子域名)或字符串数​​组的形式传递。
errorTileUrl String '' 要显示的图块图像的URL,以代替无法加载的图块。
zoomOffset Number 0 平铺URL中使用的缩放编号将使用此值进行偏移。
tms Boolean false 如果true,反转瓷砖的Y轴编号(为TMS服务启用此功能)。
zoomReverse Boolean false 如果设置为true,则平铺URL中使用的缩放编号将反转(maxZoom - zoom而不是zoom
detectRetina Boolean false 如果true和用户在视网膜显示器上,它将要求四个指定尺寸的一半的瓷砖和一个更大的缩放级别来代替一个以利用高分辨率。
crossOrigin Boolean false 如果为true,则所有切片的crossOrigin属性都将设置为''。如果要访问切片像素数据,则需要这样做。
配置 类型 默认 描述
tileSize Number|Point 256 网格中瓷砖的宽度和高度。如果宽度和高度相等,则使用数字,BM.point(width, height)否则。
opacity Number 1.0 瓷砖的不透明度。可以在createTile()函数中使用。
updateWhenIdle Boolean (depends) 仅在平移结束时加载新图块。 true默认情况下在移动浏览器上,以避免过多请求并保持平滑导航。 false否则,为了平移期间显示新的图块,因为keepBuffer在桌面浏览器中很容易在该选项之外平移
updateWhenZooming Boolean true 默认情况下,平滑缩放动画(在触摸缩放期间或a 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 该层是否包裹在antimeridian周围。如果true,GridLayer只会以低缩放级别显示一次。当地图CRS没有环绕时没有效果可与之配合使用bounds 防止请求超出CRS限制的磁贴。
pane String 'tilePane' Map pane 将添加网格图层的位置。
className String '' 要分配给切片图层的自定义类名。默认为空。
keepBuffer Number 2 平移地图时,请在卸载之前保留此许多行和列的切片。
配置 类型 默认 描述
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
loading Event 网格图层开始加载图块时触发。
tileunload TileEvent 在移除瓷砖时触发(例如,当瓷砖离开屏幕时)。
tileloadstart TileEvent 请求磁贴并在开始加载时触发。
tileerror TileErrorEvent 加载磁贴时出错。
tileload TileEvent 当瓷砖加载时触发。
load Event 当网格图层加载所有可见的图块时触发。
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
setParams( <Object> params, <Boolean> noRedraw?) this

使用新参数合并对象并在当前屏幕上重新请求切片(除非noRedraw设置为true)。

方法 返回 描述
setUrl( <String> url, <Boolean> noRedraw?) this

更新图层的URL模板并重新绘制它(除非noRedraw设置为true)。

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

仅在内部调用,覆盖GridLayer createTile() 以返回具有<img>给定的适当图像URL HTML元素coordsdone 在分片已经加载回调被调用。

方法 返回 描述
bringToFront() this

将切片图层置于所有切片图层的顶部。

bringToBack() this

将切片图层置于所有切片图层的底部。

getContainer() HTMLElement

返回包含此图层的切片的HTML元素。

setOpacity( <Number> opacity) this

更改网格图层不透明度

setZIndex( <Number> zIndex) this

更改网格图层zIndex

isLoading() Boolean

返回true如果在网格层有块尚未加载完毕。

redraw() this

使图层清除所有图块并再次请求它们。

getTileSize() Point

tileSize选项规范化为一个点。createTile()方法使用。

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

ImageOverlay

用于在地图的特定边界上加载和显示单个图像。延伸Layer

用法示例

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

创建

描述
BM.imageOverlay( <String> imageUrl, <LatLngBounds> bounds, <ImageOverlay options> options?) 给定图像的URL及其所绑定的地理边界,以实例化图像叠加对象。

选项

配置 类型 默认 描述
opacity Number 1.0 图像叠加层的不透明度。
alt String '' alt图像属性的文本(对辅助功能非常有用)。
interactive Boolean false 如果true,图像叠加将在单击或悬停时发出鼠标事件
crossOrigin Boolean false 如果为true,则图像的crossOrigin属性设置为''。如果要访问图像像素数据,则需要这样做。
errorOverlayUrl String '' 显示覆盖图像的URL,代替无法加载的叠加层。
zIndex Number 1 切片图层的显式zIndex
className String '' 要分配给图像的自定义类名。默认为空。
配置 类型 默认 描述
bubblingMouseEvents Boolean true 何时true,此图层上的鼠标事件将在地图上触发相同的事件(除非BM.DomEvent.stopPropagation使用)。
配置 类型 默认 描述
pane String 'overlayPane' 默认情况下,图层将添加到地图的叠加窗格中覆盖此选项将导致默认情况下将图层放置在另一个窗格上。
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
load Event ImageOverlay图层加载其图像时触发
error Event ImageOverlay图层加载其图像时触发
事件 数据 描述
click MouseEvent 用户单击(或点击)图层时触发。
dblclick MouseEvent 当用户双击(或双击)图层时触发。
mousedown MouseEvent 当用户在图层上按下鼠标按钮时触发。
mouseup MouseEvent 当用户释放在图层上按下的鼠标按钮时触发。
mouseover MouseEvent 鼠标进入图层时触发。
mouseout MouseEvent 当鼠标离开图层时触发。
contextmenu MouseEvent 当用户右键单击图层时触发,防止默认浏览器上下文菜单显示此事件是否有侦听器。当用户持续一次触摸(也称为长按)时,也会在手机上触发。
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
setOpacity( <Number> opacity) this

设置叠加层的不透明度。

bringToFront() this

将图层置于所有叠加层的顶部。

bringToBack() this

将图层置于所有叠加层的底部。

setUrl( <String> url) this

更改图像的URL。

setBounds( <LatLngBounds> bounds) this

更新此ImageOverlay所涵盖的边界更改图像叠加层zIndex

getBounds() LatLngBounds

获取此ImageOverlay涵盖的范围

getElement() HTMLElement

返回HTMLImageElement 此叠加层使用的实例

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

VideoOverlay

用于在地图的特定边界上加载和显示视频播放器。延伸ImageOverlay视频叠加层使用<video> HTML5元素。

用法示例

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

创建

描述
BM.videoOverlay( <String|Array|HTMLVideoElement> video, <LatLngBounds> bounds, <VideoOverlay options> options?) 给定视频的URL(或URL数组,甚至视频元素)及其所绑定的地理边界,以实例化图像叠加对象。

选项

配置 类型 默认 描述
autoplay Boolean true 视频是否在加载时自动开始播放。
loop Boolean true 视频是否会在播放时循环回到开头。
配置 类型 默认 描述
opacity Number 1.0 图像叠加层的不透明度。
alt String '' alt图像属性的文本(对辅助功能非常有用)。
interactive Boolean false 如果true,图像叠加将在单击或悬停时发出鼠标事件
crossOrigin Boolean false 如果为true,则图像的crossOrigin属性设置为''。如果要访问图像像素数据,则需要这样做。
errorOverlayUrl String '' 显示覆盖图像的URL,代替无法加载的叠加层。
zIndex Number 1 切片图层的显式zIndex
className String '' 要分配给图像的自定义类名。默认为空。
配置 类型 默认 描述
bubblingMouseEvents Boolean true 何时true,此图层上的鼠标事件将在地图上触发相同的事件(除非BM.DomEvent.stopPropagation使用)。
配置 类型 默认 描述
pane String 'overlayPane' 默认情况下,图层将添加到地图的叠加窗格中覆盖此选项将导致默认情况下将图层放置在另一个窗格上。
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
load Event 视频加载完第一帧后触发
事件 数据 描述
error Event ImageOverlay图层加载其图像时触发
事件 数据 描述
click MouseEvent 用户单击(或点击)图层时触发。
dblclick MouseEvent 当用户双击(或双击)图层时触发。
mousedown MouseEvent 当用户在图层上按下鼠标按钮时触发。
mouseup MouseEvent 当用户释放在图层上按下的鼠标按钮时触发。
mouseover MouseEvent 鼠标进入图层时触发。
mouseout MouseEvent 当鼠标离开图层时触发。
contextmenu MouseEvent 当用户右键单击图层时触发,防止默认浏览器上下文菜单显示此事件是否有侦听器。当用户持续一次触摸(也称为长按)时,也会在手机上触发。
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
getElement() HTMLVideoElement

返回HTMLVideoElement 此叠加层使用的实例

方法 返回 描述
setOpacity( <Number> opacity) this

设置叠加层的不透明度。

bringToFront() this

将图层置于所有叠加层的顶部。

bringToBack() this

将图层置于所有叠加层的底部。

setUrl( <String> url) this

更改图像的URL。

setBounds( <LatLngBounds> bounds) this

更新此ImageOverlay所涵盖的边界更改图像叠加层zIndex

getBounds() LatLngBounds

获取此ImageOverlay涵盖的范围

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

路径

一个抽象类,包含矢量叠加(Polygon,Polyline,Circle)之间共享的选项和常量。不要直接使用它。延伸Layer

选项

配置 类型 默认 描述
stroke Boolean true 是否沿路径绘制笔划。将其设置false为禁用多边形或圆形的边框。
color String '#3388ff' 中风颜色
weight Number 3 笔画宽度(以像素为单位)
opacity Number 1.0 中风不透明度
lineCap String 'round' 一个字符串,用于定义要在笔划结束使用的形状
lineJoin String 'round' 一个字符串,用于定义要在笔触的角使用的形状
dashArray String null 用于定义笔触虚线图案的字符串Canvas某些旧浏览器中不适用于动态图层
dashOffset String null 一个字符串,用于定义到破折号模式距离以启动破折号Canvas某些旧浏览器中不适用于动态图层
fill Boolean depends 是否用颜色填充路径。将其设置false为禁用填充多边形或圆形。
fillColor String * 填色。默认为color选项的值
fillOpacity Number 0.2 填充不透明度。
fillRule String 'evenodd' 一个字符串,用于定义如何确定形状的内部
bubblingMouseEvents Boolean true 何时true,此路径上的鼠标事件将在地图上触发相同的事件(除非BM.DomEvent.stopPropagation使用)。
renderer Renderer 将此特定实例Renderer用于此路径。优先于地图的默认渲染器
className String null 在元素上设置自定义类名。仅适用于SVG渲染器。
配置 类型 默认 描述
interactive Boolean true 如果false,图层不会发出鼠标事件,并将作为底层地图的一部分。
配置 类型 默认 描述
pane String 'overlayPane' 默认情况下,图层将添加到地图的叠加窗格中覆盖此选项将导致默认情况下将图层放置在另一个窗格上。
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
click MouseEvent 用户单击(或点击)图层时触发。
dblclick MouseEvent 当用户双击(或双击)图层时触发。
mousedown MouseEvent 当用户在图层上按下鼠标按钮时触发。
mouseup MouseEvent 当用户释放在图层上按下的鼠标按钮时触发。
mouseover MouseEvent 鼠标进入图层时触发。
mouseout MouseEvent 当鼠标离开图层时触发。
contextmenu MouseEvent 当用户右键单击图层时触发,防止默认浏览器上下文菜单显示此事件是否有侦听器。当用户持续一次触摸(也称为长按)时,也会在手机上触发。
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
redraw() this

重绘图层。更改路径使用的坐标后,有时很有用。

setStyle( <Path options> style) this

根据Path options对象中的选项更改Path的外观

bringToFront() this

将图层置于所有路径图层的顶部。

bringToBack() this

将图层置于所有路径图层的底部。

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

折线

用于在地图上绘制折线叠加层的类。延伸Path

用法示例

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

您还可以传递多维数组来表示MultiPolyline形状:

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

创建

描述
BM.polyline( <LatLng[]> latlngs, <Polyline options> options?) 在给定地理点数组和可选的选项对象的情况下实例化折线对象。您可以通过传递地理点数组的数组来创建Polyline具有多个单独行(MultiPolyline对象

选项

配置 类型 默认 描述
smoothFactor Number 1.0 在每个缩放级别上简化折线的程度。更多意味着更好的性能和更流畅的外观,更少意味着更准确的表示。
noClip Boolean false 禁用折线剪裁。
配置 类型 默认 描述
stroke Boolean true 是否沿路径绘制笔划。将其设置false为禁用多边形或圆形的边框。
color String '#3388ff' 中风颜色
weight Number 3 笔画宽度(以像素为单位)
opacity Number 1.0 中风不透明度
lineCap String 'round' 一个字符串,用于定义要在笔划结束使用的形状
lineJoin String 'round' 一个字符串,用于定义要在笔触的角使用的形状
dashArray String null 用于定义笔触虚线图案的字符串Canvas某些旧浏览器中不适用于动态图层
dashOffset String null 一个字符串,用于定义到破折号模式距离以启动破折号Canvas某些旧浏览器中不适用于动态图层
fill Boolean depends 是否用颜色填充路径。将其设置false为禁用填充多边形或圆形。
fillColor String * 填色。默认为color选项的值
fillOpacity Number 0.2 填充不透明度。
fillRule String 'evenodd' 一个字符串,用于定义如何确定形状的内部
bubblingMouseEvents Boolean true 何时true,此路径上的鼠标事件将在地图上触发相同的事件(除非BM.DomEvent.stopPropagation使用)。
renderer Renderer 将此特定实例Renderer用于此路径。优先于地图的默认渲染器
className String null 在元素上设置自定义类名。仅适用于SVG渲染器。
配置 类型 默认 描述
interactive Boolean true 如果false,图层不会发出鼠标事件,并将作为底层地图的一部分。
配置 类型 默认 描述
pane String 'overlayPane' 默认情况下,图层将添加到地图的叠加窗格中覆盖此选项将导致默认情况下将图层放置在另一个窗格上。
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
click MouseEvent 用户单击(或点击)图层时触发。
dblclick MouseEvent 当用户双击(或双击)图层时触发。
mousedown MouseEvent 当用户在图层上按下鼠标按钮时触发。
mouseup MouseEvent 当用户释放在图层上按下的鼠标按钮时触发。
mouseover MouseEvent 鼠标进入图层时触发。
mouseout MouseEvent 当鼠标离开图层时触发。
contextmenu MouseEvent 当用户右键单击图层时触发,防止默认浏览器上下文菜单显示此事件是否有侦听器。当用户持续一次触摸(也称为长按)时,也会在手机上触发。
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
toGeoJSON() Object

返回一个 GeoJSON折线的表示(作为GeoJSON LineStringMultiLineString特征)。

getLatLngs() LatLng[]

返回路径中的点数组,或者在多折线的情况下返回嵌套的点数组。

setLatLngs( <LatLng[]> latlngs) this

用给定的地理点数组替换折线中的所有点。

isEmpty() Boolean

true如果折线没有LatLng,则返回

closestLayerPoint() Point

返回最接近p折线的点

getCenter() LatLng

返回折线的中心(质心)。

getBounds() LatLngBounds

返回LatLngBounds路径。

addLatLng( <LatLng> latlng) this

将一个给定点添加到折线。默认情况下,在多折线的情况下添加到折线的第一个环,但可以通过将特定环作为LatLng数组(您可以在之前访问getLatLngs来覆盖

方法 返回 描述
redraw() this

重绘图层。更改路径使用的坐标后,有时很有用。

setStyle( <Path options> style) this

根据Path options对象中的选项更改Path的外观

bringToFront() this

将图层置于所有路径图层的顶部。

bringToBack() this

将图层置于所有路径图层的底部。

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

多边形

用于在地图上绘制多边形叠加层的类。延伸Polyline请注意,创建多边形时传递的点不应该具有等于第一个点的额外最后一个点 - 最好过滤掉这些点。

用法示例

// create a red polygon from an array of LatLng points
var latlngs = [[37, -109.05],[41, -109.03],[41, -102.05],[37, -102.04]];
var polygon = BM.polygon(latlngs, {color: 'red'}).addTo(map);
// zoom the map to the polygon
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]]
  ]
];

创建

描述
BM.polygon( <LatLng[]> latlngs, <Polyline options> options?)

选项

配置 类型 默认 描述
smoothFactor Number 1.0 在每个缩放级别上简化折线的程度。更多意味着更好的性能和更流畅的外观,更少意味着更准确的表示。
noClip Boolean false 禁用折线剪裁。
配置 类型 默认 描述
stroke Boolean true 是否沿路径绘制笔划。将其设置false为禁用多边形或圆形的边框。
color String '#3388ff' 中风颜色
weight Number 3 笔画宽度(以像素为单位)
opacity Number 1.0 中风不透明度
lineCap String 'round' 一个字符串,用于定义要在笔划结束使用的形状
lineJoin String 'round' 一个字符串,用于定义要在笔触的角使用的形状
dashArray String null 用于定义笔触虚线图案的字符串Canvas某些旧浏览器中不适用于动态图层
dashOffset String null 一个字符串,用于定义到破折号模式距离以启动破折号Canvas某些旧浏览器中不适用于动态图层
fill Boolean depends 是否用颜色填充路径。将其设置false为禁用填充多边形或圆形。
fillColor String * 填色。默认为color选项的值
fillOpacity Number 0.2 填充不透明度。
fillRule String 'evenodd' 一个字符串,用于定义如何确定形状的内部
bubblingMouseEvents Boolean true 何时true,此路径上的鼠标事件将在地图上触发相同的事件(除非BM.DomEvent.stopPropagation使用)。
renderer Renderer 将此特定实例Renderer用于此路径。优先于地图的默认渲染器
className String null 在元素上设置自定义类名。仅适用于SVG渲染器。
配置 类型 默认 描述
interactive Boolean true 如果false,图层不会发出鼠标事件,并将作为底层地图的一部分。
配置 类型 默认 描述
pane String 'overlayPane' 默认情况下,图层将添加到地图的叠加窗格中覆盖此选项将导致默认情况下将图层放置在另一个窗格上。
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
click MouseEvent 用户单击(或点击)图层时触发。
dblclick MouseEvent 当用户双击(或双击)图层时触发。
mousedown MouseEvent 当用户在图层上按下鼠标按钮时触发。
mouseup MouseEvent 当用户释放在图层上按下的鼠标按钮时触发。
mouseover MouseEvent 鼠标进入图层时触发。
mouseout MouseEvent 当鼠标离开图层时触发。
contextmenu MouseEvent 当用户右键单击图层时触发,防止默认浏览器上下文菜单显示此事件是否有侦听器。当用户持续一次触摸(也称为长按)时,也会在手机上触发。
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
toGeoJSON() Object

返回一个 GeoJSON多边形的表示(作为GeoJSON PolygonMultiPolygonFeature)。

方法 返回 描述
getLatLngs() LatLng[]

返回路径中的点数组,或者在多折线的情况下返回嵌套的点数组。

setLatLngs( <LatLng[]> latlngs) this

用给定的地理点数组替换折线中的所有点。

isEmpty() Boolean

true如果折线没有LatLng,则返回

closestLayerPoint() Point

返回最接近p折线的点

getCenter() LatLng

返回折线的中心(质心)。

getBounds() LatLngBounds

返回LatLngBounds路径。

addLatLng( <LatLng> latlng) this

将一个给定点添加到折线。默认情况下,在多折线的情况下添加到折线的第一个环,但可以通过将特定环作为LatLng数组(您可以在之前访问getLatLngs来覆盖

方法 返回 描述
redraw() this

重绘图层。更改路径使用的坐标后,有时很有用。

setStyle( <Path options> style) this

根据Path options对象中的选项更改Path的外观

bringToFront() this

将图层置于所有路径图层的顶部。

bringToBack() this

将图层置于所有路径图层的底部。

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

长方形

用于在地图上绘制矩形叠加层的类。延伸Polygon

用法示例

// define rectangle geographical bounds
var bounds = [[54.559322, -5.767822], [56.1210604, -3.021240]];
// create an orange rectangle
BM.rectangle(bounds, {color: "#ff7800", weight: 1}).addTo(map);
// zoom the map to the rectangle bounds
map.fitBounds(bounds);

创建

描述
BM.rectangle( <LatLngBounds> latLngBounds, <Polyline options> options?)

选项

配置 类型 默认 描述
smoothFactor Number 1.0 在每个缩放级别上简化折线的程度。更多意味着更好的性能和更流畅的外观,更少意味着更准确的表示。
noClip Boolean false 禁用折线剪裁。
配置 类型 默认 描述
stroke Boolean true 是否沿路径绘制笔划。将其设置false为禁用多边形或圆形的边框。
color String '#3388ff' 中风颜色
weight Number 3 笔画宽度(以像素为单位)
opacity Number 1.0 中风不透明度
lineCap String 'round' 一个字符串,用于定义要在笔划结束使用的形状
lineJoin String 'round' 一个字符串,用于定义要在笔触的角使用的形状
dashArray String null 用于定义笔触虚线图案的字符串Canvas某些旧浏览器中不适用于动态图层
dashOffset String null 一个字符串,用于定义到破折号模式距离以启动破折号Canvas某些旧浏览器中不适用于动态图层
fill Boolean depends 是否用颜色填充路径。将其设置false为禁用填充多边形或圆形。
fillColor String * 填色。默认为color选项的值
fillOpacity Number 0.2 填充不透明度。
fillRule String 'evenodd' 一个字符串,用于定义如何确定形状的内部
bubblingMouseEvents Boolean true 何时true,此路径上的鼠标事件将在地图上触发相同的事件(除非BM.DomEvent.stopPropagation使用)。
renderer Renderer 将此特定实例Renderer用于此路径。优先于地图的默认渲染器
className String null 在元素上设置自定义类名。仅适用于SVG渲染器。
配置 类型 默认 描述
interactive Boolean true 如果false,图层不会发出鼠标事件,并将作为底层地图的一部分。
配置 类型 默认 描述
pane String 'overlayPane' 默认情况下,图层将添加到地图的叠加窗格中覆盖此选项将导致默认情况下将图层放置在另一个窗格上。
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
click MouseEvent 用户单击(或点击)图层时触发。
dblclick MouseEvent 当用户双击(或双击)图层时触发。
mousedown MouseEvent 当用户在图层上按下鼠标按钮时触发。
mouseup MouseEvent 当用户释放在图层上按下的鼠标按钮时触发。
mouseover MouseEvent 鼠标进入图层时触发。
mouseout MouseEvent 当鼠标离开图层时触发。
contextmenu MouseEvent 当用户右键单击图层时触发,防止默认浏览器上下文菜单显示此事件是否有侦听器。当用户持续一次触摸(也称为长按)时,也会在手机上触发。
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
setBounds( <LatLngBounds> latLngBounds) this

使用传递的边界重绘矩形。

方法 返回 描述
toGeoJSON() Object

返回一个 GeoJSON多边形的表示(作为GeoJSON PolygonMultiPolygonFeature)。

方法 返回 描述
getLatLngs() LatLng[]

返回路径中的点数组,或者在多折线的情况下返回嵌套的点数组。

setLatLngs( <LatLng[]> latlngs) this

用给定的地理点数组替换折线中的所有点。

isEmpty() Boolean

true如果折线没有LatLng,则返回

closestLayerPoint() Point

返回最接近p折线的点

getCenter() LatLng

返回折线的中心(质心)。

getBounds() LatLngBounds

返回LatLngBounds路径。

addLatLng( <LatLng> latlng) this

将一个给定点添加到折线。默认情况下,在多折线的情况下添加到折线的第一个环,但可以通过将特定环作为LatLng数组(您可以在之前访问getLatLngs来覆盖

方法 返回 描述
redraw() this

重绘图层。更改路径使用的坐标后,有时很有用。

setStyle( <Path options> style) this

根据Path options对象中的选项更改Path的外观

bringToFront() this

将图层置于所有路径图层的顶部。

bringToBack() this

将图层置于所有路径图层的底部。

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

用于在地图上绘制圆形叠加层的类。延伸CircleMarker这是一个近似值,并开始偏离靠近极点的真实圆(由于投影失真)。

用法示例

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

创建

描述
BM.circle( <LatLng> latlng, <Circle options> options?) 实例化给定地理点的圆对象,以及包含圆半径的选项对象。
BM.circle( <LatLng> latlng, <Number> radius, <Circle options> options?) 实例化圆圈的过时方式,与0.7.x代码兼容。不要在新的应用程序或插件中使用。

选项

配置 类型 默认 描述
radius Number 圆的半径,以米为单位。
配置 类型 默认 描述
stroke Boolean true 是否沿路径绘制笔划。将其设置false为禁用多边形或圆形的边框。
color String '#3388ff' 中风颜色
weight Number 3 笔画宽度(以像素为单位)
opacity Number 1.0 中风不透明度
lineCap String 'round' 一个字符串,用于定义要在笔划结束使用的形状
lineJoin String 'round' 一个字符串,用于定义要在笔触的角使用的形状
dashArray String null 用于定义笔触虚线图案的字符串Canvas某些旧浏览器中不适用于动态图层
dashOffset String null 一个字符串,用于定义到破折号模式距离以启动破折号Canvas某些旧浏览器中不适用于动态图层
fill Boolean depends 是否用颜色填充路径。将其设置false为禁用填充多边形或圆形。
fillColor String * 填色。默认为color选项的值
fillOpacity Number 0.2 填充不透明度。
fillRule String 'evenodd' 一个字符串,用于定义如何确定形状的内部
bubblingMouseEvents Boolean true 何时true,此路径上的鼠标事件将在地图上触发相同的事件(除非BM.DomEvent.stopPropagation使用)。
renderer Renderer 将此特定实例Renderer用于此路径。优先于地图的默认渲染器
className String null 在元素上设置自定义类名。仅适用于SVG渲染器。
配置 类型 默认 描述
interactive Boolean true 如果false,图层不会发出鼠标事件,并将作为底层地图的一部分。
配置 类型 默认 描述
pane String 'overlayPane' 默认情况下,图层将添加到地图的叠加窗格中覆盖此选项将导致默认情况下将图层放置在另一个窗格上。
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
click MouseEvent 用户单击(或点击)图层时触发。
dblclick MouseEvent 当用户双击(或双击)图层时触发。
mousedown MouseEvent 当用户在图层上按下鼠标按钮时触发。
mouseup MouseEvent 当用户释放在图层上按下的鼠标按钮时触发。
mouseover MouseEvent 鼠标进入图层时触发。
mouseout MouseEvent 当鼠标离开图层时触发。
contextmenu MouseEvent 当用户右键单击图层时触发,防止默认浏览器上下文菜单显示此事件是否有侦听器。当用户持续一次触摸(也称为长按)时,也会在手机上触发。
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
setRadius( <Number> radius) this

设置圆的半径。单位是米。

getRadius() Number

返回圆的当前半径。单位是米。

getBounds() LatLngBounds

返回LatLngBounds路径。

方法 返回 描述
toGeoJSON() Object

返回一个 GeoJSON圆形标记的表示(作为GeoJSON Point特征)。

setLatLng( <LatLng> latLng) this

将圆圈标记的位置设置为新位置。

getLatLng() LatLng

返回圆标记的当前地理位置

方法 返回 描述
redraw() this

重绘图层。更改路径使用的坐标后,有时很有用。

setStyle( <Path options> style) this

根据Path options对象中的选项更改Path的外观

bringToFront() this

将图层置于所有路径图层的顶部。

bringToBack() this

将图层置于所有路径图层的底部。

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

CircleMarker

一个固定大小的圆,半径以像素为单位指定。延伸Path

创建

描述
BM.circleMarker( <LatLng> latlng, <CircleMarker options> options?) 给定地理点的实例化圆形标记对象,以及可选的选项对象。

选项

配置 类型 默认 描述
radius Number 10 圆形标记的半径,以像素为单位
配置 类型 默认 描述
stroke Boolean true 是否沿路径绘制笔划。将其设置false为禁用多边形或圆形的边框。
color String '#3388ff' 中风颜色
weight Number 3 笔画宽度(以像素为单位)
opacity Number 1.0 中风不透明度
lineCap String 'round' 一个字符串,用于定义要在笔划结束使用的形状
lineJoin String 'round' 一个字符串,用于定义要在笔触的角使用的形状
dashArray String null 用于定义笔触虚线图案的字符串Canvas某些旧浏览器中不适用于动态图层
dashOffset String null 一个字符串,用于定义到破折号模式距离以启动破折号Canvas某些旧浏览器中不适用于动态图层
fill Boolean depends 是否用颜色填充路径。将其设置false为禁用填充多边形或圆形。
fillColor String * 填色。默认为color选项的值
fillOpacity Number 0.2 填充不透明度。
fillRule String 'evenodd' 一个字符串,用于定义如何确定形状的内部
bubblingMouseEvents Boolean true 何时true,此路径上的鼠标事件将在地图上触发相同的事件(除非BM.DomEvent.stopPropagation使用)。
renderer Renderer 将此特定实例Renderer用于此路径。优先于地图的默认渲染器
className String null 在元素上设置自定义类名。仅适用于SVG渲染器。
配置 类型 默认 描述
interactive Boolean true 如果false,图层不会发出鼠标事件,并将作为底层地图的一部分。
配置 类型 默认 描述
pane String 'overlayPane' 默认情况下,图层将添加到地图的叠加窗格中覆盖此选项将导致默认情况下将图层放置在另一个窗格上。
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
click MouseEvent 用户单击(或点击)图层时触发。
dblclick MouseEvent 当用户双击(或双击)图层时触发。
mousedown MouseEvent 当用户在图层上按下鼠标按钮时触发。
mouseup MouseEvent 当用户释放在图层上按下的鼠标按钮时触发。
mouseover MouseEvent 鼠标进入图层时触发。
mouseout MouseEvent 当鼠标离开图层时触发。
contextmenu MouseEvent 当用户右键单击图层时触发,防止默认浏览器上下文菜单显示此事件是否有侦听器。当用户持续一次触摸(也称为长按)时,也会在手机上触发。
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
toGeoJSON() Object

返回一个 GeoJSON圆形标记的表示(作为GeoJSON Point特征)。

setLatLng( <LatLng> latLng) this

将圆圈标记的位置设置为新位置。

getLatLng() LatLng

返回圆标记的当前地理位置

setRadius( <Number> radius) this

设置圆圈标记的半径。单位为像素。

getRadius() Number

返回圆的当前半径

方法 返回 描述
redraw() this

重绘图层。更改路径使用的坐标后,有时很有用。

setStyle( <Path options> style) this

根据Path options对象中的选项更改Path的外观

bringToFront() this

将图层置于所有路径图层的顶部。

bringToBack() this

将图层置于所有路径图层的底部。

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

SVG

虽然在IE7和IE8上没有SVG,但这些浏览器支持VML,在这种情况下SVG渲染器将回退到VML。VML在2012年已弃用,这意味着VML功能仅用于向后兼容旧版Internet Explorer。

允许使用SVG显示矢量图层继承Renderer由于技术限制,SVG并非在所有Web浏览器中都可用,特别是Android 2.x和3.x. 虽然在IE7和IE8上没有SVG,但这些浏览器支持 VML (现已弃用的技术),在这种情况下SVG渲染器将回退到VML。

用法示例

默认情况下,对地图中的所有路径使用SVG:

var map = BM.map('map', {
    renderer: BM.svg()
});

使用具有额外填充的SVG渲染器来处理特定的矢量几何:

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

创建

描述
BM.svg( <Renderer options> options?) 使用给定选项创建SVG渲染器。

选项

配置 类型 默认 描述
padding Number 0.1 在地图视图周围(相对于其大小)扩展剪辑区域的程度是多少,例如,0.1将是每个方向上的地图视图的10%
tolerance Number 0 围绕地图上的路径/对象延伸点击容差的程度
配置 类型 默认 描述
pane String 'overlayPane' 默认情况下,图层将添加到地图的叠加窗格中覆盖此选项将导致默认情况下将图层放置在另一个窗格上。
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
update Event 当渲染器更新其边界,居中和缩放时触发,例如当其地图移动时
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

功能

有几个静态函数可以在不实例化BM.SVG的情况下调用:
功能 返回 描述
create( <String> name) SVGElement 返回SVGElement的实例,对应于传递的类名。例如,使用'line'将返回SVGLineElement的实例
pointsToPath( <Point[]> rings, <Boolean> closed) String 为多个环生成SVG路径字符串,每个环变为“M..BM..L ..”指令

帆布

允许使用矢量图层显示<canvas>继承Renderer由于技术限制,Canvas并非在所有Web浏览器中都可用,尤其是IE8,并且在某些边缘情况下,重叠几何可能无法正确显示。

用法示例

默认情况下,对地图中的所有路径使用Canvas:

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

对于特定的矢量几何,请使用Canvas渲染器和额外的填充:

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

创建

描述
BM.canvas( <Renderer options> options?) 使用给定选项创建Canvas渲染器。

选项

配置 类型 默认 描述
padding Number 0.1 在地图视图周围(相对于其大小)扩展剪辑区域的程度是多少,例如,0.1将是每个方向上的地图视图的10%
tolerance Number 0 围绕地图上的路径/对象延伸点击容差的程度
配置 类型 默认 描述
pane String 'overlayPane' 默认情况下,图层将添加到地图的叠加窗格中覆盖此选项将导致默认情况下将图层放置在另一个窗格上。
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
update Event 当渲染器更新其边界,居中和缩放时触发,例如当其地图移动时
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

图层组

用于将多个图层分组并将其作为一个图层处理。如果将其添加到地图中,则还会在地图上添加/删除从组中添加或删除的任何图层。延伸Layer

用法示例

BM.layerGroup([marker1, marker2])
    .addLayer(polyline)
    .addTo(map);

创建

描述
BM.layerGroup( <Layer[]> layers?, <Object> options?) 创建一个图层组,可选地给出一组初始图层和一个options对象。

选项

配置 类型 默认 描述
pane String 'overlayPane' 默认情况下,图层将添加到地图的叠加窗格中覆盖此选项将导致默认情况下将图层放置在另一个窗格上。
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
toGeoJSON() Object

返回一个 GeoJSON层组的表示(作为以GeoJSON FeatureCollectionGeometryCollectionMultiPoint)。

addLayer( <Layer> layer) this

将给定图层添加到组中。

removeLayer( <Layer> layer) this

从组中删除给定的图层。

removeLayer( <Number> id) this

从组中删除具有给定内部ID的图层。

hasLayer( <Layer> layer) Boolean

返回true如果给定的层,目前添加到该组。

hasLayer( <Number> id) Boolean

返回true如果给定的内部ID目前添加到该组。

clearLayers() this

从组中删除所有图层。

invoke( <String> methodName, ) this

调用methodName此组中包含的每个层,传递任何其他参数。如果包含的图层未实现,则无效methodName

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

迭代组的层,可选地指定迭代器函数的上下文。

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

返回具有给定内部ID的图层。

getLayers() Layer[]

返回添加到组中的所有图层的数组。

setZIndex( <Number> zIndex) this

调用setZIndex该组中包含的每个层,传递z-index。

getLayerId( <Layer> layer) Number

返回图层的内部ID

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

FeatureGroup

扩展LayerGroup使得更容易对其所有成员层执行相同的操作:

  • bindPopup一次将弹出窗口绑定到所有图层(同样如此bindTooltip
  • 事件传播到FeatureGroup,因此如果组具有事件处理程序,它将处理来自任何层的事件。这包括鼠标事件和自定义事件。
  • layeraddlayerremove事件

用法示例

BM.featureGroup([marker1, marker2, polyline])
    .bindPopup('Hello world!')
    .on('click', function() { alert('Clicked on a member of the group!'); })
    .addTo(map);

创建

描述
BM.featureGroup( <Layer[]> layers) 创建一个要素组,可选择为其提供一组初始图层。

选项

配置 类型 默认 描述
pane String 'overlayPane' 默认情况下,图层将添加到地图的叠加窗格中覆盖此选项将导致默认情况下将图层放置在另一个窗格上。
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
layeradd LayerEvent 将图层添加到此时触发 FeatureGroup
layerremove LayerEvent 从此处移除图层时触发 FeatureGroup
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
setStyle( <Path options> style) this

将给定路径选项设置为具有setStyle方法的组的每个层

bringToFront() this

将图层组置于所有其他图层的顶部

bringToBack() this

将图层组带到所有其他图层的背面

getBounds() LatLngBounds

返回要素组的LatLngBounds(根据其子项的边界和坐标创建)。

方法 返回 描述
toGeoJSON() Object

返回一个 GeoJSON层组的表示(作为以GeoJSON FeatureCollectionGeometryCollectionMultiPoint)。

addLayer( <Layer> layer) this

将给定图层添加到组中。

removeLayer( <Layer> layer) this

从组中删除给定的图层。

removeLayer( <Number> id) this

从组中删除具有给定内部ID的图层。

hasLayer( <Layer> layer) Boolean

返回true如果给定的层,目前添加到该组。

hasLayer( <Number> id) Boolean

返回true如果给定的内部ID目前添加到该组。

clearLayers() this

从组中删除所有图层。

invoke( <String> methodName, ) this

调用methodName此组中包含的每个层,传递任何其他参数。如果包含的图层未实现,则无效methodName

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

迭代组的层,可选地指定迭代器函数的上下文。

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

返回具有给定内部ID的图层。

getLayers() Layer[]

返回添加到组中的所有图层的数组。

setZIndex( <Number> zIndex) this

调用setZIndex该组中包含的每个层,传递z-index。

getLayerId( <Layer> layer) Number

返回图层的内部ID

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

以GeoJSON

表示GeoJSON对象或GeoJSON对象的数组。允许您解析GeoJSON数据并将其显示在地图上。延伸FeatureGroup

用法示例

BM.geoJSON(data, {
    style: function (feature) {
        return {color: feature.properties.color};
    }
}).bindPopup(function (layer) {
    return layer.feature.properties.description;
}).addTo(map);

创建

描述
BM.geoJSON( <Object> geojson?, <GeoJSON options> options?) 创建GeoJSON图层。(可选)接受GeoJSON格式的对象以 在地图上显示(您可以稍后使用addData方法添加它)和options对象。

选项

配置 类型 默认 描述
pointToLayer Function * 一个Function定义点如何以GeoJSON产卵单张层。添加数据时会在内部调用它,并传递GeoJSON点功能及其功能LatLng默认是生成默认值Marker
function(geoJsonPoint, latlng) {
    return BM.marker(latlng);
}
style Function * Function限定Path options用于造型以GeoJSON线和多边形,在添加数据时内部调用。默认值是不覆盖任何默认值:
function (geoJsonFeature) {
    return {}
}
onEachFeature Function * 一个Function创建的每个将被调用一次Feature被创建和风格后,。用于将事件和弹出窗口附加到要素。默认情况下,对新创建的图层不执行任何操作:
function (feature, layer) {}
filter Function * Function将用于决定是否包含功能的A. 默认设置包括所有功能:
function (geoJsonFeature) {
    return true;
}

注意:动态更改filter选项仅对新添加的数据有效。不会重新评估已包含的功能。

coordsToLatLng Function * Function用于将GeoJSON坐标转换为LatLngs的A. 默认值是coordsToLatLng静态方法。
配置 类型 默认 描述
pane String 'overlayPane' 默认情况下,图层将添加到地图的叠加窗格中覆盖此选项将导致默认情况下将图层放置在另一个窗格上。
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
layeradd LayerEvent 将图层添加到此时触发 FeatureGroup
layerremove LayerEvent 从此处移除图层时触发 FeatureGroup
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
addData(data) this

将GeoJSON对象添加到图层。

resetStyle(layer) this

将给定矢量图层的样式重置为原始GeoJSON样式,对于悬停事件后重置样式非常有用。

setStyle(style) this

使用给定的样式函数更改GeoJSON矢量图层的样式。

方法 返回 描述
bringToFront() this

将图层组置于所有其他图层的顶部

bringToBack() this

将图层组带到所有其他图层的背面

getBounds() LatLngBounds

返回要素组的LatLngBounds(根据其子项的边界和坐标创建)。

方法 返回 描述
toGeoJSON() Object

返回一个 GeoJSON层组的表示(作为以GeoJSON FeatureCollectionGeometryCollectionMultiPoint)。

addLayer( <Layer> layer) this

将给定图层添加到组中。

removeLayer( <Layer> layer) this

从组中删除给定的图层。

removeLayer( <Number> id) this

从组中删除具有给定内部ID的图层。

hasLayer( <Layer> layer) Boolean

返回true如果给定的层,目前添加到该组。

hasLayer( <Number> id) Boolean

返回true如果给定的内部ID目前添加到该组。

clearLayers() this

从组中删除所有图层。

invoke( <String> methodName, ) this

调用methodName此组中包含的每个层,传递任何其他参数。如果包含的图层未实现,则无效methodName

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

迭代组的层,可选地指定迭代器函数的上下文。

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

返回具有给定内部ID的图层。

getLayers() Layer[]

返回添加到组中的所有图层的数组。

setZIndex( <Number> zIndex) this

调用setZIndex该组中包含的每个层,传递z-index。

getLayerId( <Layer> layer) Number

返回图层的内部ID

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

功能

有几个静态函数可以在不实例化BM.GeoJSON的情况下调用:
功能 返回 描述
geometryToLayer( <Object> featureData, <GeoJSON options> options?) Layer Layer从给定的GeoJSON功能创建一个 如果作为选项提供,可以使用自定义 pointToLayer和/或coordsToLatLng功能。
coordsToLatLng( <Array> coords) LatLng LatLng从GeoJSON中用于点的2个数字(经度,纬度)或3个数字(经度,纬度,高度)的数组创建对象。
coordsToLatLngs( <Array> coords, <Number> levelsDeep?, <Function> coordsToLatLng?) Array LatLng从GeoJSON坐标数组创建s 的多维数组。 levelsDeep指定嵌套级别(0表示点数组,1表示点数组数组,等等,默认为0)。可以使用自定义coordsToLatLng功能。
latLngToCoords( <LatLng> latlng, <Number> precision?) Array 逆转 coordsToLatLng
latLngsToCoords( <Array> latlngs, <Number> levelsDeep?, <Boolean> closed?) Array 反向确定是否应将第一个点附加到数组的末尾以关闭该要素,仅在为0 时使用。默认为False。coordsToLatLngs closedlevelsDeep
asFeature( <Object> geojson) Object 将GeoJSON几何/特征规范化为GeoJSON特征。

GridLayer

用于处理HTML元素的平铺网格的通用类。这是所有切片图层和替换的基类TileLayer.CanvasGridLayer可以扩展为创建一个HTML元素的平铺网格,如<canvas><img><div>GridLayer将为您处理创建和动画这些DOM元素。

用法示例

同步使用

要创建自定义层,延长GridLayer和实施createTile()方法,这将传递一个Point对象和xyz(缩放级别)坐标绘制的瓷砖。

var CanvasLayer = BM.GridLayer.extend({
    createTile: function(coords){
        // create a <canvas> element for drawing
        var tile = BM.DomUtil.create('canvas', bm-tile');
        // setup tile width and height according to the options
        var size = this.getTileSize();
        tile.width = size.x;
        tile.height = size.y;
        // get a canvas context and draw something on it using coords.x, coords.y and coords.z
        var ctx = tile.getContext('2d');
        // return the tile so it can be rendered on screen
        return tile;
    }
});

异步使用

平铺创建也可以是异步的,这在使用第三方绘图库时很有用。图块完成绘制后,可以将其传递给done()回调。

var CanvasLayer = BM.GridLayer.extend({
    createTile: function(coords, done){
        var error;
        // create a <canvas> element for drawing
        var tile = BM.DomUtil.create('canvas', bm-tile');
        // setup tile width and height according to the options
        var size = this.getTileSize();
        tile.width = size.x;
        tile.height = size.y;
        // draw something asynchronously and pass the tile to the done() callback
        setTimeout(function() {
            done(error, tile);
        }, 1000);
        return tile;
    }
});

创建

描述
BM.gridLayer( <GridLayer options> options?) 使用提供的选项创建GridLayer的新实例。

选项

配置 类型 默认 描述
tileSize Number|Point 256 网格中瓷砖的宽度和高度。如果宽度和高度相等,则使用数字,BM.point(width, height)否则。
opacity Number 1.0 瓷砖的不透明度。可以在createTile()函数中使用。
updateWhenIdle Boolean (depends) 仅在平移结束时加载新图块。 true默认情况下在移动浏览器上,以避免过多请求并保持平滑导航。 false否则,为了平移期间显示新的图块,因为keepBuffer在桌面浏览器中很容易在该选项之外平移
updateWhenZooming Boolean true 默认情况下,平滑缩放动画(在触摸缩放期间或a 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 该层是否包裹在antimeridian周围。如果true,GridLayer只会以低缩放级别显示一次。当地图CRS没有环绕时没有效果可与之配合使用bounds 防止请求超出CRS限制的磁贴。
pane String 'tilePane' Map pane 将添加网格图层的位置。
className String '' 要分配给切片图层的自定义类名。默认为空。
keepBuffer Number 2 平移地图时,请在卸载之前保留此许多行和列的切片。
配置 类型 默认 描述
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
loading Event 网格图层开始加载图块时触发。
tileunload TileEvent 在移除瓷砖时触发(例如,当瓷砖离开屏幕时)。
tileloadstart TileEvent 请求磁贴并在开始加载时触发。
tileerror TileErrorEvent 加载磁贴时出错。
tileload TileEvent 当瓷砖加载时触发。
load Event 当网格图层加载所有可见的图块时触发。
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
bringToFront() this

将切片图层置于所有切片图层的顶部。

bringToBack() this

将切片图层置于所有切片图层的底部。

getContainer() HTMLElement

返回包含此图层的切片的HTML元素。

setOpacity( <Number> opacity) this

更改网格图层不透明度

setZIndex( <Number> zIndex) this

更改网格图层zIndex

isLoading() Boolean

返回true如果在网格层有块尚未加载完毕。

redraw() this

使图层清除所有图块并再次请求它们。

getTileSize() Point

tileSize选项规范化为一个点。createTile()方法使用。

扩展方法

延伸层GridLayer应重新实施以下方法。
方法 返回 描述
createTile( <Object> coords, <Function> done?) HTMLElement

仅在内部调用,必须由扩展的类重写GridLayer返回HTMLElement给定对应项coords如果done指定回调,则必须在切片完成加载和绘制时调用它。

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

经纬度

表示具有一定纬度和经度的地理点。

用法示例

var latlng = BM.latLng(50.5, 30.5);

接受LatLng对象的所bm方法也以简单的Array形式和简单的对象形式接受它们(除非另有说明),因此这些行是等效的:

map.panTo([50, 30]);
map.panTo({lon: 30, lat: 50});
map.panTo({lat: 50, lng: 30});
map.panTo(BM.latLng(50, 30));

请注意,LatLng不会从BM的Class对象继承,这意味着新类不能从它继承,并且无法使用该include函数向其添加新方法

创建

描述
BM.latLng( <Number> latitude, <Number> longitude, <Number> altitude?) 创建表示具有给定纬度和经度(以及可选的高度)的地理点的对象。
BM.latLng( <Array> coords) 期待一个表格[Number, Number][Number, Number, Number]相反的数组
BM.latLng( <Object> coords) 期待表格的简单对象{lat: Number, lng: Number}{lat: Number, lng: Number, alt: Number}替代。

方法

方法 返回 描述
equals( <LatLng> otherLatLng, <Number> maxMargin?) Boolean

返回true如果给定的LatLng点是在相同的位置(错误的小幅度的范围内)。设置maxMargin为较小的数字可以覆盖误差范围

toString() String

返回该点的字符串表示形式(用于调试目的)。

distanceTo( <LatLng> otherLatLng) Number

返回LatLng使用球面余弦定律计算的给定距离(以米为单位)

wrap() LatLng

返回LatLng包装经度的新对象,使其始终介于-180和+180度之间。

toBounds( <Number> sizeInMeters) LatLngBounds

返回一个新LatLngBounds对象,其中每个边界与sizeInMeters/2米相距几米LatLng

属性

属性 类型 描述
lat Number 纬度度
lng Number 经度度
alt Number 海拔高度(米)(可选)

的LatLngBounds

表示地图上的矩形地理区域。

用法示例

var corner1 = BM.latLng(40.712, -74.227),
corner2 = BM.latLng(40.774, -74.125),
bounds = BM.latLngBounds(corner1, corner2);

接受LatLngBounds对象的所bm方法也以简单的Array形式接受它们(除非另有说明),因此上面的bounds示例可以像这样传递:

map.fitBounds([
    [40.712, -74.227],
    [40.774, -74.125]
]);

注意:如果区域穿过反射(通常与国际日期线混淆),则必须指定[-180,180]度经度范围之外请注意,LatLngBounds不会从BM的Class对象继承,这意味着新类不能从它继承,并且无法使用该include函数向其添加新方法

创建

描述
BM.latLngBounds( <LatLng> corner1, <LatLng> corner2) LatLngBounds通过定义矩形的两个对角相对的角来创建对象。
BM.latLngBounds( <LatLng[]> latlngs) 创建LatLngBounds由其包含的地理点定义对象。对于缩放地图以适合特定的一组位置非常有用fitBounds

方法

方法 返回 描述
extend( <LatLng> latlng) this

扩展边界以包含给定点

extend( <LatLngBounds> otherBounds) this

扩展边界以包含给定的边界

pad( <Number> bufferRatio) LatLngBounds

返回通过在每个方向上按给定比率扩展或缩回当前边界而创建的边界。例如,0.5的比率在每个方向上将边界扩展50%。负值将收回边界。

getCenter() LatLng

返回边界的中心点。

getSouthWest() LatLng

返回边界的西南点。

getNorthEast() LatLng

返回边界的东北点。

getNorthWest() LatLng

返回边界的西北点。

getSouthEast() LatLng

返回边界的东南点。

getWest() Number

返回边界的西经度

getSouth() Number

返回边界的南纬

getEast() Number

返回边界的东经度

getNorth() Number

返回边界的北纬

contains( <LatLngBounds> otherBounds) Boolean

true如果矩形包含给定的矩形,则返回

contains( <LatLng> latlng) Boolean

true如果矩形包含给定点,则返回

intersects( <LatLngBounds> otherBounds) Boolean

true如果矩形与给定边界相交,则返回如果两个边界至少有一个共同点,则两个边界相交。

overlaps( <Bounds> otherBounds) Boolean

true如果矩形与给定边界重叠,则返回如果它们的交点是一个区域,则两个边界重叠。

toBBoxString() String

返回带有'southwest_lng,southwest_lat,northeast_lng,northeast_lat'格式的边界框坐标的字符串。用于向返回地理数据的Web服务发送请求。

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

返回true如果矩形相当于(误差的小幅度内)到给定的界限。设置maxMargin为较小的数字可以覆盖误差范围

isValid() Boolean

true如果正确初始化边界,则返回

表示带有xy以像素为单位的坐标的点

用法示例

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

接受Point对象的所bm方法和选项也以简单的Array形式接受它们(除非另有说明),因此这些行是等效的:

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

请注意,Point不会从BM的Class对象继承,这意味着新类不能从它继承,并且无法使用该include函数向其添加新方法

创建

描述
BM.point( <Number> x, <Number> y, <Boolean> round?) 使用给定xy坐标创建Point对象如果optional round设置为true,则舍入xy值。
BM.point( <Number[]> coords) 期待一个表格的数组[x, y]
BM.point( <Object> coords) 期待表格的普通对象{x: Number, y: Number}

方法

方法 返回 描述
clone() Point

返回当前点的副本。

add( <Point> otherPoint) Point

返回当前和给定点的相加结果。

subtract( <Point> otherPoint) Point

返回从当前减去给定点的结果。

divideBy( <Number> num) Point

返回当前点除以给定数字的结果。

multiplyBy( <Number> num) Point

返回当前点乘以给定数字的结果。

scaleBy( <Point> scale) Point

将当前点的每个坐标乘以每个坐标 scale在线性代数项中,将该点乘以 定义缩放矩阵scale

unscaleBy( <Point> scale) Point

逆的scaleBy将当前点的每个坐标除以每个坐标scale

round() Point

返回带圆角坐标的当前点的副本。

floor() Point

返回带有地板坐标(向下舍入)的当前点的副本。

ceil() Point

返回带有ceiled坐标的当前点的副本(向上舍入)。

trunc() Point

返回带有截断坐标的当前点的副本(向零舍入)。

distanceTo( <Point> otherPoint) Number

返回当前点和给定点之间的笛卡尔距离。

equals( <Point> otherPoint) Boolean

true如果给定点具有相同的坐标,则返回

contains( <Point> otherPoint) Boolean

返回true给定的点的两个坐标是小于相应的当前点坐标(绝对值)。

toString() String

返回该点的字符串表示形式以进行调试。

属性

属性 类型 描述
x Number x坐标
y Number y坐标

边界

表示像素坐标中的矩形区域。

用法示例

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

接受Bounds对象的所bm方法也以简单的Array形式接受它们(除非另有说明),因此上面的bounds示例可以像这样传递:

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

请注意,Bounds不会从BM的Class对象继承,这意味着新类不能从它继承,并且无法使用该include函数向其添加新方法

创建

描述
BM.bounds( <Point> corner1, <Point> corner2) 从两个角坐标对创建一个Bounds对象。
BM.bounds( <Point[]> points) 从给定的点数组创建Bounds对象。

方法

方法 返回 描述
extend( <Point> point) this

扩展边界以包含给定点。

getCenter( <Boolean> round?) Point

返回边界的中心点。

getBottomLeft() Point

返回边界的左下角。

getTopRight() Point

返回边界的右上角。

getTopLeft() Point

返回边界的左上角(即this.min)。

getBottomRight() Point

返回边界的右下角(即this.max)。

getSize() Point

返回给定边界的大小

contains( <Bounds> otherBounds) Boolean

true如果矩形包含给定的矩形,则返回

contains( <Point> point) Boolean

true如果矩形包含给定点,则返回

intersects( <Bounds> otherBounds) Boolean

true如果矩形与给定边界相交,则返回如果两个边界至少有一个共同点,则两个边界相交。

overlaps( <Bounds> otherBounds) Boolean

true如果矩形与给定边界重叠,则返回如果它们的交点是一个区域,则两个边界重叠。

属性

属性 类型 描述
min Point 矩形的左上角。
max Point 矩形的右下角。

图标

表示创建标记时要提供的图标。

用法示例

var myIcon = BM.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]
});
BM.marker([50.505, 30.57], {icon: myIcon}).addTo(map);

BM.Icon.Defaultextends BM.Icon,bm默认用于标记的蓝色图标。

创建

描述
BM.icon( <Icon options> options) 使用给定选项创建图标实例。

选项

配置 类型 默认 描述
iconUrl String null (必需)图标图像的URL(绝对或相对于脚本路径)。
iconRetinaUrl String null 视网膜大小的图标图像版本的URL(绝对或相对于您的脚本路径)。用于Retina屏幕设备。
iconSize Point null 图标图像的大小(以像素为单位)。
iconAnchor Point null 图标“尖端”的坐标(相对于其左上角)。图标将对齐,以使此点位于标记的地理位置。如果指定了size,则默认居中,也可以在具有负边距的CSS中设置。
popupAnchor Point [0, 0] 弹出窗口相对于图标锚点“打开”的点的坐标。
tooltipAnchor Point [0, 0] 相对于图标锚点,工具提示将“打开”的点的坐标。
shadowUrl String null 图标阴影图像的URL。如果未指定,则不会创建阴影图像。
shadowRetinaUrl String null
shadowSize Point null 阴影图像的大小(以像素为单位)。
shadowAnchor Point null 阴影“尖端”的坐标(相对于其左上角)(如果未指定,则与iconAnchor相同)。
className String '' 要分配给图标和阴影图像的自定义类名。默认为空。

方法

方法 返回 描述
createIcon( <HTMLElement> oldIcon?) HTMLElement

在必须显示图标时在内部调用,返回<img>根据选项设置样式HTML元素。

createShadow( <HTMLElement> oldIcon?) HTMLElement

作为createIcon,但对于它下面的阴影。

Icon.Default

一个简单的子类Icon,表示Marker当没有指定图标时s中使用的图标。指向bm版本一起分发的蓝色标记图像。要自定义默认图标,只需更改BM.Icon.Default.prototype.options (一组Icon options的属性如果要完全替换默认图标, BM.Marker.prototype.options.icon请改为使用您自己的图标。
配置 类型 默认 描述
imagePath String Icon.Default将尝试自动检测蓝色图标图像的位置。如果要以非标准方式放置这些图像,请将此选项设置为指向正确的路径。

DivIcon

通过可以定义<div>来设置图形标记(如iconfont),相比Icon省去了iconUrl状语从句:阴影配置。

使用示例

var myIcon = BM.divIcon({className: 'my-div-icon'});
// you can set .my-div-icon styles in CSS
BM.marker([50.505, 30.57], {icon: myIcon}).addTo(map);

默认情况下,Class为bm-div-icon',一个带有有阴影的白色小正方形。

创建

方法 描述
BM.divIcon( <DivIcon options> options) 一个创建³³新的DivIcon并配置。

配置

配置 类型 默认 描述
html String '' 自定义HTML元素,默为未空
bgPos Point [0, 0] 设置背景相对位置(单位px)
配置 类型 默认 描述
iconUrl String null (必需)图标图像的URL(绝对或相对于脚本路径)。
iconRetinaUrl String null 视网膜大小的图标图像版本的URL(绝对或相对于您的脚本路径)。用于Retina屏幕设备。
iconSize Point null 图标图像的大小(以像素为单位)。
iconAnchor Point null 图标“尖端”的坐标(相对于其左上角)。图标将对齐,以使此点位于标记的地理位置。如果指定了size,则默认居中,也可以在具有负边距的CSS中设置。
popupAnchor Point [0, 0] 弹出窗口相对于图标锚点“打开”的点的坐标。
tooltipAnchor Point [0, 0] 相对于图标锚点,工具提示将“打开”的点的坐标。
shadowUrl String null 图标阴影图像的URL。如果未指定,则不会创建阴影图像。
shadowRetinaUrl String null
shadowSize Point null 阴影图像的大小(以像素为单位)。
shadowAnchor Point null 阴影“尖端”的坐标(相对于其左上角)(如果未指定,则与iconAnchor相同)。
className String '' 要分配给图标和阴影图像的自定义类名。默认为空。

方法

方法 返回 描述
createIcon( <HTMLElement> oldIcon?) HTMLElement

在必须显示图标时在内部调用,返回<img>根据选项设置样式HTML元素。

createShadow( <HTMLElement> oldIcon?) HTMLElement

作为createIcon,但对于它下面的阴影。

Control.Zoom

带有两个按钮的基本变焦控制(放大和缩小)。默认情况下,它会放在地图上,除非您将其zoomControl选项设置false延伸Control

创建

描述
BM.control.zoom( <Control.Zoom options> options) 创建缩放控件

选项

配置 类型 默认 描述
zoomInText String '+' “放大”按钮上设置的文字。
zoomInTitle String 'Zoom in' 标题设置在“放大”按钮上。
zoomOutText String '&#x2212 ''缩小'按钮上设置的文字。
zoomOutTitle String 'Zoom out' 标题设置在“缩小”按钮上。
配置 类型 默认 描述
position String 'topright' 控件的位置(地图角之一)。可能的值是'topleft''topright''bottomleft'或者'bottomright'

方法

方法 返回 描述
getPosition() string

返回控件的位置。

setPosition( <string> position) this

设置控件的位置。

getContainer() HTMLElement

返回包含该控件的HTMLElement。

addTo( <Map> map) this

将控件添加到给定的地图。

remove() this

从当前处于活动状态的地图中删除控件。

Control.Attribution

归因控件允许您在地图上的小文本框中显示归因数据。默认情况下,它会放在地图上,除非您将其attributionControl选项设置false,并且它会自动使用该getAttribution方法从图层中提取属性文本扩展控制。

创建

描述
BM.control.attribution( <Control.Attribution options> options) 创建归因控件。

选项

配置 类型 默认 描述
prefix String bm 在属性之前显示的HTML文本。通过false禁用。
配置 类型 默认 描述
position String 'topright' 控件的位置(地图角之一)。可能的值是'topleft''topright''bottomleft'或者'bottomright'

方法

方法 返回 描述
setPrefix( <String> prefix) this

设置属性之前的文本。

addAttribution( <String> text) this

添加归因文本(例如'Vector data &copy; Mapbox')。

removeAttribution( <String> text) this

删除归因文字。

方法 返回 描述
getPosition() string

返回控件的位置。

setPosition( <string> position) this

设置控件的位置。

getContainer() HTMLElement

返回包含该控件的HTMLElement。

addTo( <Map> map) this

将控件添加到给定的地图。

remove() this

从当前处于活动状态的地图中删除控件。

Control.Layers

图层控件使用户能够在不同的基础层之间切换并打开/关闭覆盖图(查看详细示例)。延伸Control

用法示例

var baseLayers = {
    "Mapbox": mapbox,
    "OpenStreetMap": osm
};
var overlays = {
    "Marker": marker,
    "Roads": roadsLayer
};
BM.control.layers(baseLayers, overlays).addTo(map);

baseLayersoverlays参数是对象常量与层名作为密钥和Layer对象作为值:

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

图层名称可以包含HTML,允许您为项目添加其他样式:

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

创建

描述
BM.control.layers( <Object> baselayers?, <Object> overlays?, <Control.Layers options> options?) 使用给定图层创建归因控件。基础层将使用单选按钮切换,而叠加将使用复选框切换。请注意,所有基础图层都应在基础图层对象中传递,但在地图实例化期间只应将一个基础图层添加到地图中。

选项

配置 类型 默认 描述
collapsed Boolean true 如果true,控件将折叠为图标并在鼠标悬停或触摸时展开。
autoZIndex Boolean true 如果true,控件将zIndexes按递增顺序分配给其所有图层,以便在打开/关闭它们时保留顺序。
hideSingleBase Boolean false 如果true,只有一个控件中的基础图层将被隐藏。
sortLayers Boolean false 是否对图层进行排序。何时false,图层将保持它们添加到控件的顺序。
sortFunction Function * 比较功能 将被用于排序所述层,当sortLayerstrue该函数接收BM.Layer实例及其名称,如 sortFunction(layerA, layerB, nameA, nameB)默认情况下,它按名称的字母顺序对图层进行排序。
配置 类型 默认 描述
position String 'topright' 控件的位置(地图角之一)。可能的值是'topleft''topright''bottomleft'或者'bottomright'

方法

方法 返回 描述
addBaseLayer( <Layer> layer, <String> name) this

向控件添加具有给定名称的基础图层(单选按钮条目)。

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

向控件添加具有给定名称的叠加层(复选框条目)。

removeLayer( <Layer> layer) this

从控件中删除给定的图层。

expand() this

如果折叠,则展开控件容器。

collapse() this

如果展开,则折叠控件容器。

方法 返回 描述
getPosition() string

返回控件的位置。

setPosition( <string> position) this

设置控件的位置。

getContainer() HTMLElement

返回包含该控件的HTMLElement。

addTo( <Map> map) this

将控件添加到给定的地图。

remove() this

从当前处于活动状态的地图中删除控件。

Control.Scale

一个简单的比例控制,以公制(m / km)和英制(mi / ft)系统显示当前屏幕中心的比例。延伸Control

用法示例

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

创建

描述
BM.control.scale( <Control.Scale options> options?) 使用给定选项创建缩放控件。

选项

配置 类型 默认 描述
maxWidth Number 100 控件的最大宽度(以像素为单位)。动态设置宽度以显示圆值(例如100,200,500)。
metric Boolean True 是否显示公制刻度线(m / km)。
imperial Boolean True 是否显示英制刻度线(mi / ft)。
updateWhenIdle Boolean false 如果true,控件更新moveend,否则它始终是最新的(更新move)。
配置 类型 默认 描述
position String 'topright' 控件的位置(地图角之一)。可能的值是'topleft''topright''bottomleft'或者'bottomright'

方法

方法 返回 描述
getPosition() string

返回控件的位置。

setPosition( <string> position) this

设置控件的位置。

getContainer() HTMLElement

返回包含该控件的HTMLElement。

addTo( <Map> map) this

将控件添加到给定的地图。

remove() this

从当前处于活动状态的地图中删除控件。

浏览器

用法示例

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

属性

属性 类型 描述
ie Boolean true 适用于所有Internet Explorer版本(不是Edge)。
ielt9 Boolean true 适用于小于9的Internet Explorer版本。
edge Boolean true 用于Edge Web浏览器。
webkit Boolean true 适用于基于webkit的浏览器,如Chrome和Safari(包括移动版)。
android Boolean true 适用于在Android平台上运行的任何浏览器。
android23 Boolean true 适用于在Android 2或Android 3上运行的浏览器。
androidStock Boolean true 对于Android股票浏览器(即不是Chrome)
opera Boolean true 对于Opera浏览器
chrome Boolean true 对于Chrome浏览器。
gecko Boolean true 用于基于gecko的浏览器,如Firefox。
safari Boolean true 用于Safari浏览器。
opera12 Boolean true 支持CSS转换的Opera浏览器(版本12或更高版本)。
win Boolean true 当浏览器在Windows平台上运行时
ie3d Boolean true 适用于支持CSS转换的所有Internet Explorer版本。
webkit3d Boolean true 用于支持CSS转换的基于webkit的浏览器。
gecko3d Boolean true 用于支持CSS转换的基于gecko的浏览器。
any3d Boolean true 适用于支持CSS转换的所有浏览器。
mobile Boolean true 适用于在移动设备上运行的所有浏览器。
mobileWebkit Boolean true 适用于移动设备中所有基于webkit的浏览器。
mobileWebkit3d Boolean true 适用于支持CSS转换的移动设备中所有基于webkit的浏览器。
msPointer Boolean true 用于实现Microsoft触摸事件模型的浏览器(特别是IE10)。
pointer Boolean true支持指针事件的所有浏览器
touch Boolean true支持所有浏览器的触摸事件这并不一定意味着浏览器在带触摸屏的计算机上运行,​​这只意味着浏览器能够理解触摸事件。
mobileOpera Boolean true 用于移动设备中的Opera浏览器。
mobileGecko Boolean true 用于在移动设备中运行的基于gecko的浏览器。
retina Boolean true 适用于高分辨率“视网膜”屏幕上的浏览器。
canvas Boolean true当浏览器支持时<canvas>
svg Boolean true当浏览器支持SVG时
vml Boolean true如果浏览器支持VML

UTIL

功能

功能 返回 描述
extend( <Object> dest, <Object> src?) Object src对象(或多个对象)的属性合并dest对象中并返回后者。BM.extend捷径。
create( <Object> proto, <Object> properties?) Object Object.create的兼容性polyfill
bind( <Function> fn, ) Function 返回绑定到传递的参数的新函数,如Function.prototype.bindBM.bind()捷径。
stamp( <Object> obj) Number 返回对象的唯一ID,如果没有它,则指定一个对象。
throttle( <Function> fn, <Number> time, <Object> context) Function 返回一个执行fn具有给定范围的函数的函数context (以便this关键字引用context内部fn的代码)。fn每个给定量的函数 调用的次数不会超过一次time绑定函数接收的参数将是绑定函数时传递的任何参数,后跟调用绑定函数时传递的任何参数。BM.throttle捷径。
wrapNum( <Number> num, <Number[]> range, <Boolean> includeMax?) Number 以这样的方式返回num模数range,使其位于 range[0]和中range[1]返回值将始终小于 range[1]除非includeMax设置为true
falseFn() Function 返回一个总是返回的函数false
formatNum( <Number> num, <Number> digits?) Number 返回num舍入为digits小数的数字,或默认返回6位小数。
trim( <String> str) String String.prototype.trim的兼容性polyfill
splitWords( <String> str) String[] 修剪并拆分空格上的字符串并返回部件数组。
setOptions( <Object> obj, <Object> options) Object 合并给定的属性添加到options了的obj对象,返回结果的选项。Class optionsBM.setOptions捷径。
getParamString( <Object> obj, <String> existingUrl?, <Boolean> uppercase?) String 将对象转换为参数URL字符串,例如{a: "foo", b: "bar"} 转换为'?a=foo&b=bar'如果existingUrl设置,则参数将在末尾附加。如果uppercasetrue,参数名称将为大写(例如'?A=foo&B=bar'
template( <String> str, <Object> data) String 简单的模板工具,接受表单的模板字符串'Hello {a}, {b}' 和数据对象{a: 'foo', b: 'bar'},返回计算字符串 ('Hello foo, bar')您还可以为数据值指定函数而不是字符串 - 它们将data作为参数传递
isArray(obj) Boolean Array.isArray的兼容性polyfill
indexOf( <Array> array, <Object> el) Number Array.prototype.indexOf的兼容性polyfill
requestAnimFrame( <Function> fn, <Object> context?, <Boolean> immediate?) Number fn浏览器重新绘制时要执行的计划如果有的话,这fn是必然的 contextimmediate设置,fn则如果浏览器不具备原生支持立即打电话 window.requestAnimationFrame,否则就延迟了。返回可用于取消请求的请求ID。
cancelAnimFrame( <Number> id) undefined 取消之前的requestAnimFrame另请参见window.cancelAnimationFrame

属性

属性 类型 描述
lastId Number 最后使用的唯一ID stamp()
emptyImageUrl String 包含base64编码的空GIF图像的数据URI字符串。用作黑客,以便从WebKit驱动的移动设备上的未使用图像中释放内存(通过将图像设置src为此字符串)。

转型

代表仿射变换:一组系数abcd 转化形式的点(x, y)(a*x + b, c*y + d),做相反。bm在其投影代码中使用。

用法示例

var transformation = BM.transformation(2, 5, -1, 10),
    p = BM.point(1, 2),
    p2 = transformation.transform(p), //  BM.point(7, 8)
    p3 = transformation.untransform(p2); //  BM.point(1, 2)

创建

描述
BM.transformation( <Number> a, <Number> b, <Number> c, <Number> d) 使用给定系数实例化Transformation对象。
BM.transformation( <Array> coefficients) 期望表单的系数数组 [a: Number, b: Number, c: Number, d: Number]

方法

方法 返回 描述
transform( <Point> point, <Number> scale?) Point

返回一个转换点,可选地乘以给定的比例。仅接受实际BM.Point实例,而不接受数组。

untransform( <Point> point, <Number> scale?) Point

返回给定点的反向变换,可选地除以给定的比例。仅接受实际BM.Point实例,而不接受数组。

LineUtil

用于折线点处理的各种实用程序函数,bm在内部用于使折线快速闪烁。

功能

功能 返回 描述
simplify( <Point[]> points, <Number> tolerance) Point[] 使用Douglas-Peucker算法,在保持其形状的同时显着减少折线中的点数并返回一个新的简化点阵列 用于处理/显示每个缩放级别bm折线并且还降低视觉噪声时的巨大性能提升。容差会影响简化量(较小的值意味着更高的质量,但速度更慢,点数更多)。也作为分离的微库Simplify.js发布
pointToSegmentDistance( <Point> p, <Point> p1, <Point> p2) Number 返回点之间的距离p和段p1p2
closestPointOnSegment( <Point> p, <Point> p1, <Point> p2) Number 返回从一个点的最近点p上的段p1p2
clipSegment( <Point> a, <Point> b, <Bounds> bounds, <Boolean> useLastCode?, <Boolean> round?) Point[]|Boolean 使用Cohen-Sutherland算法通过矩形边界剪切片段a到b (直接修改片段点!)。
isFlat( <LatLng[]> latlngs) Boolean 如果latlngs是平面数组,则返回true ,嵌套为false。

PolyUtil

多边形几何的各种实用函数。

功能

功能 返回 描述
clipPolygon( <Point[]> points, <Bounds> bounds, <Boolean> round?) Point[] 剪切由给points定边界定义的多边形几何体(使用Sutherland-Hodgman算法)。请注意,多边形点需要不同的裁剪算法而不是折线,因此有一个单独的方法。

DomEvent

实用程序函数用于处理DOM事件

功能

功能 返回 描述
on( <HTMLElement> el, <String> types, <Function> fn, <Object> context?) this 将侦听器函数(fn添加到元素的特定DOM事件类型el您可以选择指定侦听器的上下文(this关键字将指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。
on( <HTMLElement> el, <Object> eventMap, <Object> context?) this 添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}
off( <HTMLElement> el, <String> types, <Function> fn, <Object> context?) this 删除以前添加的侦听器功能。请注意,如果将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。
off( <HTMLElement> el, <Object> eventMap, <Object> context?) this 删除一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}
stopPropagation( <DOMEvent> ev) this 停止给定事件传播到父元素。在侦听器函数中使用:
BM.DomEvent.on(div, 'click', function (ev) {
    BM.DomEvent.stopPropagation(ev);
});
disableScrollPropagation( <HTMLElement> el) this 添加stopPropagation到元素的'mousewheel'事件(以及浏览器变体)。
disableClickPropagation( <HTMLElement> el) this 添加stopPropagation到元素的'click''doubleclick''mousedown''touchstart'事件(加上浏览器变种)。
preventDefault( <DOMEvent> ev) this 阻止DOM事件的默认操作ev发生(例如,跟随a元素的href中的链接,或者在<form>提交a时执行带有页面重新加载的POST请求)。在侦听器函数中使用它。
stop( <DOMEvent> ev) this stopPropagationpreventDefault同时。
getMousePosition( <DOMEvent> ev, <HTMLElement> container?) Point container如果未指定,则从DOM事件相对于整个页面获取标准化的鼠标位置
getWheelDelta( <DOMEvent> ev) Number 从鼠标滚轮DOM事件获取标准化的轮增量,以垂直像素滚动(如果向下滚动则为负)。来自没有精确滚动的指点设备的事件被映射到60像素的最佳猜测。
addListener() this 别名来 BM.DomEvent.on
removeListener() this 别名来 BM.DomEvent.off

DomUtil

实用程序函数与DOM 树一起使用,bm在内部使用。期望或返回的大多数函数HTMLElement也适用于SVG元素。唯一的区别是类引用了SVG中的CSS类和SVG中的SVG类。

功能

功能 返回 描述
get( <String|HTMLElement> id) HTMLElement 返回给定其DOM id的元素,如果直接传递则返回元素本身。
getStyle( <HTMLElement> el, <String> styleAttrib) String 返回元素上某个样式属性的值,包括计算值或通过CSS设置的值。
create( <String> tagName, <String> className?, <HTMLElement> container?) HTMLElement 创建一个HTML元素tagName,将其类设置为className,并可选择将其附加到container元素。
remove( <HTMLElement> el) el从其父元素中删除
empty( <HTMLElement> el) 删除所有el的子元素el
toFront( <HTMLElement> el) 制作el其父级的最后一个子级,因此它在其他子级之前呈现。
toBack( <HTMLElement> el) 使el其父元素的第一个子元素成为其他子元素的后代。
hasClass( <HTMLElement> el, <String> name) Boolean 返回true元素的class属性是否包含name
addClass( <HTMLElement> el, <String> name) 添加name到元素的class属性。
removeClass( <HTMLElement> el, <String> name) name从元素的class属性中删除
setClass( <HTMLElement> el, <String> name) 设置元素的类。
getClass( <HTMLElement> el) String 返回元素的类。
setOpacity( <HTMLElement> el, <Number> opacity) 设置元素的不透明度(包括旧的IE支持)。 opacity必须从数量01
testProp( <String[]> props) String|false 遍历样式名称数组并返回第一个名称,该名称是元素的有效样式名称。如果找不到这样的名称,则返回false。对于像transform这样的供应商前缀样式很有用
setTransform( <HTMLElement> el, <Point> offset, <Number> scale?) 重置3D CSS变换,el使其按offset像素平移,并可选择按比例缩放scale如果浏览器不支持3D CSS变换,则无效。
setPosition( <HTMLElement> el, <Point> position) 设置el指定坐标的位置position,使用CSS平移或顶部/左侧定位,具体取决于浏览器bm内部用于定位其图层)。
getPosition( <HTMLElement> el) Point 返回先前使用setPosition定位的元素的坐标。
disableTextSelection() 阻止用户生成selectstartDOM事件,通常在用户将鼠标拖动到带有文本的页面时生成。bm在内部使用,以覆盖地图上任何单击和拖动交互的行为。影响整个文档的拖动交互。
enableTextSelection() 取消之前的效果BM.DomUtil.disableTextSelection
disableImageDrag() BM.DomUtil.disableTextSelection,但对于dragstartDOM事件,通常当用户拖动的图像生成。
enableImageDrag() 取消之前的效果BM.DomUtil.disableImageDrag
preventOutline( <HTMLElement> el) 使 元素轮廓el不可见。bm内部使用,以防止可聚焦元素在用户对它们执行拖动交互时显示轮廓。
restoreOutline() 取消之前的效果BM.DomUtil.preventOutline

属性

属性 类型 描述
TRANSFORM String 供应商前缀的转换样式名称(例如,'webkitTransform'对于WebKit)。
TRANSITION String 供应商前缀过渡样式名称。
TRANSITION_END String 供应商前缀的transitionend事件名称。

PosAnimation

内部用于平移动画,利用现代浏览器的CSS3过渡和IE6-9的计时器回退。

用法示例

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

构造函数

构造函数 描述
BM.PosAnimation() 创建一个PosAnimation对象。

活动

事件 数据 描述
start Event 动画开始时触发
step Event 在动画期间连续拍摄。
end Event 动画结束时触发。

方法

方法 返回 描述
run( <HTMLElement> el, <Point> newPos, <Number> duration?, <Number> easeLinearity?)

运行给定元素的动画到一个新的位置,任选地设置持续时间秒(0.25默认)和宽松的线性因子(的第三参数三次Bezier曲线0.5默认情况下)。

stop()

停止动画(如果当前正在运行)。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

可拖动

用于使DOM元素可拖动的类(包括触摸支持)。内部用于地图和标记拖动。仅适用于定位的元素BM.DomUtil.setPosition

用法示例

var draggable = new BM.Draggable(elementToDrag);
draggable.enable();

构造函数

构造函数 描述
BM.Draggable( <HTMLElement> el, <HTMLElement> dragHandle?, <Boolean> preventOutline?, <Draggable options> options?) 开始拖动元素创建一个Draggable移动对象默认情况下等于自身)。eldragHandleel

选项

配置 类型 默认 描述
clickTolerance Number 3 用户可以在单击期间移动鼠标指针的最大像素数,以使其被视为有效点击(与鼠标拖动相反)。

活动

事件 数据 描述
down Event 阻力即将开始时被触发。
dragstart Event 拖动开始时触发
predrag Event 每次相应更新元素位置之前,在拖动过程中连续触发
drag Event 在拖动过程中连续触发。
dragend DragEndEvent 拖动结束时触发。

方法

方法 返回 描述
enable()

启用拖动功能

disable()

禁用拖动功能

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

BM.Classbm的OOP工具提供支持,用于创建此处记录的几乎所bm类。除了实现一个简单的经典继承模型之外,它还为方便的代码组织引入了几个特殊属性 - 选项,包含和静态。

用法示例

var MyClass = BM.Class.extend({
initialize: function (greeter) {
    this.greeter = greeter;
    // class constructor
},
greet: function (name) {
    alert(this.greeter + ', ' + name)
    }
});
// create instance of MyClass, passing "Hello" to the constructor
var a = new MyClass("Hello");
// call greet method, alerting "Hello, World"
a.greet("World");

类工厂

您可能已经注意到,在不使用new关键字的情况下创建bm对象这是通过使用小写工厂方法补充每个类来实现的:

new BM.Map('map'); // becomes:
BM.map('map');

工厂很容易实现,你可以为自己的类做到这一点:

BM.map = function (id, options) {
    return new BM.Map(id, options);
};

遗产

您使用BM.Class.extend定义新类,但您可以在任何类上使用相同的方法继承它:

var MyChildClass = MyClass.extend({
    // ... new properties and methods
});

这将创建一个继承父类的所有方法和属性的类(通过适当的原型链),添加或覆盖您传递的扩展。它还将对instanceof做出正确反应:

var a = new MyChildClass();
a instanceof MyChildClass; // true
a instanceof MyClass; // true

您可以通过访问父类原型并使用JavaScript调用或应用来从相应的子方法(与其他语言中的超级调用一样)调用父方法(包括构造函数):

var MyChildClass = MyClass.extend({
    initialize: function () {
        MyClass.prototype.initialize.call(this, "Yo");
    },
    greet: function (name) {
        MyClass.prototype.greet.call(this, 'bro ' + name + '!');
    }
});
var a = new MyChildClass();
a.greet('Jason'); // alerts "Yo, bro Jason!"

选项

options是一个特殊属性,与您传递给的其他对象不同,extend它将与父对象合并而不是完全覆盖它,这使得管理对象和默认值的配置变得方便:

var MyClass = BM.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

还有BM.Util.setOptions一种方法可以方便地合并传递给构造函数的选项,并在类中定义默认值:

var MyClass = BM.Class.extend({
    options: {
        foo: 'bar',
        bla: 5
    },
    initialize: function (options) {
        BM.Util.setOptions(this, options);
        ...
    }
});
var a = new MyClass({bla: 10});
a.options; // {foo: 'bar', bla: 10}

请注意,options对象允许任何键,而不仅仅是类及其基类定义的选项。这意味着您可以使用options对象存储特定于应用程序的信息,只要您避免使用相关类已经使用过的键即可。

包括

includes 是一个特殊的类属性,它将所有指定的对象合并到类中(这些对象称为mixins)。

 var MyMixin = {
    foo: function () { ... },
    bar: 5
};
var MyClass = BM.Class.extend({
    includes: MyMixin
});
var a = new MyClass();
a.foo();

您还可以在运行时使用以下include方法执行此类包含

MyClass.include(MyMixin);

statics 只是一个便利属性,它将指定的对象属性作为类的静态属性注入,对定义常量很有用:

var MyClass = BM.Class.extend({
    statics: {
        FOO: 'bar',
        BLA: 5
    }
});
MyClass.FOO; // 'bar'

构造函数钩子

如果您是插件开发人员,则通常需要向现有类添加其他初始化代码(例如,编辑挂钩BM.Polyline)。addInitHook方法轻松完成的方法:

MyClass.addInitHook(function () {
    // ... do something in constructor additionally
    // e.g. add event listeners, set custom properties etc.
});

当您只需要进行一次额外的方法调用时,也可以使用以下快捷方式:

MyClass.addInitHook('methodName', arg1, arg2, …);

功能

功能 返回 描述
extend( <Object> props) Function 给定要包含的属性,扩展当前类返回一个Javascript函数,它是一个类构造函数(要调用new)。
include( <Object> properties) this 包含当前类的mixin
mergeOptions( <Object> options) this 合并options到类的默认值。
addInitHook( <Function> fn) this 向类添加构造函数钩子

事件触发

在事件驱动的类(例如MapMarker之间共享的一组方法通常,事件允许您在对象发生某些事情时执行某些功能(例如,用户点击地图,导致地图触发'click'事件)。

用法示例

map.on('click', function(e) {
    alert(e.latlng);
} );

function onClick(e) { ... }
map.on('click', onClick);
map.off('click', onClick);

方法

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

所bm图层使用的Layer基类中的一组方法。继承所有方法,选项和事件BM.Evented

用法示例

var layer = BM.Marker(latlng).addTo(map);
layer.addTo(map);
layer.remove();

选项

配置 类型 默认 描述
pane String 'overlayPane' 默认情况下,图层将添加到地图的叠加窗格中覆盖此选项将导致默认情况下将图层放置在另一个窗格上。
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发

弹出事件

事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发

工具提示事件

事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

扩展类BM.Layer将继承以下方法:
方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

扩展方法

每一层都应该从BM.Layer(并重新)实现以下方法。
方法 返回 描述
onAdd( <Map> map) this

应该包含为图层创建DOM元素的代码,将它们添加到map panes它们应该属于的位置,并将侦听器放在相关的地图事件上。打电话给map.addLayer(layer)

onRemove( <Map> map) this

应该包含从DOM中删除图层元素的所有清理代码,并删除以前添加的侦听器onAdd打电话给map.removeLayer(layer)

getEvents() Object

这个可选方法应该返回一个像{ viewreset: this._reset }for 的对象addEventListener此对象中的事件处理程序将自动添加到地图中并与您的图层一起删除。

getAttribution() String

此可选方法应返回包含HTML的字符串,以便Attribution control在图层可见时显示。

beforeAdd( <Map> map) this

可选方法。map.addLayer(layer)在将图层添加到地图之前,在事件初始化之前调用,而不等到地图处于可用状态。仅用于早期初始化。

弹出方法

所有图层共享一组便于将弹出窗口绑定到它的方法。
var layer = BM.Polygon(latlngs).bindPopup('Hi There!').addTo(map);
layer.openPopup();
layer.closePopup();

单击图层时弹出窗口也将自动打开,当从地图中删除图层或打开另一个弹出窗口时,弹出窗口将关闭。

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

工具提示方法

所有图层共享一组便于将工具提示绑定到它的方法。
var layer = BM.Polygon(latlngs).bindTooltip('Hi There!').addTo(map);
layer.openTooltip();
layer.closeTooltip();
方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

交互层

一些Layers可以是交互式的 - 当用户与这样的层交互时clickmouseover可以处理类似可以处理的鼠标事件使用事件处理方法来处理这些事件。

选项

配置 类型 默认 描述
interactive Boolean true 如果false,图层不会发出鼠标事件,并将作为底层地图的一部分。
bubblingMouseEvents Boolean true 何时true,此图层上的鼠标事件将在地图上触发相同的事件(除非BM.DomEvent.stopPropagation使用)。
配置 类型 默认 描述
pane String 'overlayPane' 默认情况下,图层将添加到地图的叠加窗格中覆盖此选项将导致默认情况下将图层放置在另一个窗格上。
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

鼠标事件

事件 数据 描述
click MouseEvent 用户单击(或点击)图层时触发。
dblclick MouseEvent 当用户双击(或双击)图层时触发。
mousedown MouseEvent 当用户在图层上按下鼠标按钮时触发。
mouseup MouseEvent 当用户释放在图层上按下的鼠标按钮时触发。
mouseover MouseEvent 鼠标进入图层时触发。
mouseout MouseEvent 当鼠标离开图层时触发。
contextmenu MouseEvent 当用户右键单击图层时触发,防止默认浏览器上下文菜单显示此事件是否有侦听器。当用户持续一次触摸(也称为长按)时,也会在手机上触发。
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

控制

BM.Control是实现地图控件的基类。处理定位。所有其他控件都从此类扩展而来。

选项

配置 类型 默认 描述
position String 'topright' 控件的位置(地图角之一)。可能的值是'topleft''topright''bottomleft'或者'bottomright'

方法

扩展BM.Control的类将继承以下方法:
方法 返回 描述
getPosition() string

返回控件的位置。

setPosition( <string> position) this

设置控件的位置。

getContainer() HTMLElement

返回包含该控件的HTMLElement。

addTo( <Map> map) this

将控件添加到给定的地图。

remove() this

从当前处于活动状态的地图中删除控件。

扩展方法

每个控件都应该从BM.Control(并重新)实现以下方法。
方法 返回 描述
onAdd( <Map> map) HTMLElement

应返回控件的容器DOM元素,并在相关的地图事件上添加侦听器。打电话给control.addTo(map)

onRemove( <Map> map)

可选方法。应包含删除先前添加的侦听器的所有清理代码onAdd打电话给control.remove()

处理器

地图交互处理程序的抽象类

方法

方法 返回 描述
enable() this

启用处理程序

disable() this

禁用处理程序

enabled() Boolean

true如果启用了处理程序,则返回

扩展方法

从中继承的类Handler必须实现以下两个方法:
方法 返回 描述
addHooks()

在启用处理程序时调用,应添加事件挂钩。

removeHooks()

禁用处理程序时调用,应删除先前添加的事件挂钩。

功能

有静态函数可以在不实例化BM.Handler的情况下调用:

功能 返回 描述
addTo( <Map> map, <String> name) this 使用给定名称将新Handler添加到给定映射。

投影

具有用于将世界的地理坐标投影到平坦表面(和背面)上的方法的对象。请参见地图投影

方法

方法 返回 描述
project( <LatLng> latlng) Point

将地理坐标投影到2D点。仅接受实际BM.LatLng实例,而不接受数组。

unproject( <Point> point) LatLng

逆的project将2D点投影到地理位置。仅接受实际BM.Point实例,而不接受数组。请注意,投影实例不从BM的Class对象继承,也无法实例化。此外,新类不能从它们继承,并且无法使用该include函数将方法添加到它们中

属性

属性 类型 描述
bounds Bounds 投影有效的边界(在CRS单位中指定)

定义预测

投影 描述
BM.Projection.LonLat Equirectangular或Plate Carree投影 - 最简单的投影,主要由GIS爱好者使用。直接映射x为经度和y纬度。也适用于平面世界,例如游戏地图。EPSG:4326SimpleCRS使用。
BM.Projection.Mercator 椭圆墨卡托投影 - 比球形墨卡托更复杂。考虑到地球是一个大地水准面,而不是一个完美的球体。由EPSG使用:3395 CRS。
BM.Projection.SphericalMercator 球形墨卡托投影 - 在线地图最常见的投影,几乎所有免费和商业瓷砖供应商都使用。假设地球是一个球体。EPSG:3857CRS使用。

CRS

方法

方法 返回 描述
latLngToPoint( <LatLng> latlng, <Number> zoom) Point

将地理坐标投影到给定缩放的像素坐标。

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

逆的latLngToPoint将给定缩放上的像素坐标投影到地理坐标中。

project( <LatLng> latlng) Point

将地理坐标投影到以此CRS接受的单位的坐标中(例如,EPSG的仪表:3857,用于将其传递给WMS服务)。

unproject( <Point> point) LatLng

给定一个投影坐标返回相应的LatLng。逆的project

scale( <Number> zoom) Number

返回将投影坐标转换​​为特定缩放的像素坐标时使用的比例。例如,它返回 256 * 2^zoom基于墨卡托的CRS。

zoom( <Number> scale) Number

反转scale(),返回对应于比例因子的缩放级别scale

getProjectedBounds( <Number> zoom) Bounds

返回为提供的缩放和变换的投影边界zoom

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

返回两个地理坐标之间的距离。

wrapLatLng( <LatLng> latlng) LatLng

如果它们在CRS的边界之外,则返回LatLng根据CRS wrapLatwrapLng属性包装的lat和lng 的位置。

wrapLatLngBounds( <LatLngBounds> bounds) LatLngBounds

返回LatLngBounds与给定大小相同的大小,确保其中心位于CRS的边界内。仅接受实际BM.LatLngBounds实例,而不接受数组。

属性

属性 类型 描述
code String 传递给WMS服务的CRS的标准代码名称(例如'EPSG:3857'
wrapLng Number[] 两个数字的数组,用于定义经度(水平)坐标轴是否包围给定范围以及如何。默认为[-180, 180]大多数地理CRS。如果undefined,经度轴没有环绕。
wrapLat Number[] 喜欢wrapLng,但是对于纬度(垂直)轴。
infinite Boolean 如果为true,则坐标空间将无界(两个轴都无限)

定义的CRS

CRS 描述
BM.CRS.EPSG3395 使用椭圆墨卡托投影,较少被商用。
BM.CRS.EPSG3857 使用球形墨卡托投影(crs默认使用),最广泛使用的CRS
BM.CRS.EPSG4326 小叶1.0使用符合EPSG的TMS坐标方案:4326,如果你的TileLayer 用于此CRS,请确保在缩放级别位0时覆盖整个地球上有两个256x256的常被CIS极客盖瓦片,并且瓦片坐标为(-180,+ 90)和(-180,-90)在TileLayertms配置
BM.CRS.Earth 作为CRS的基础,它们覆盖地球是全球性的。只能用作其他CRS的基础,不能直接使用,因为它没有codeprojectiontransformationdistance()返回米。
BM.CRS.Simple 一个简单的CRS,可以将经度和纬度直接映射到x其中y可用于平面地图(例如游戏地图)。请注意,y 轴仍应倒置(从下到上)。distance()返回简单的欧几里德距离。
BM.CRS.Base 定义用于将地理点投影到像素(屏幕)坐标和背面(以及用于WMS服务的其他单元中的坐标)的坐标参考系统的对象请参阅 空间参照系如果要使用默认情况下未定义的CRS,请查看 Projbm插件。请注意,CRS实例不从BM的Class对象继承,也无法实例化。此外,新类不能从它们继承,并且无法使用该include函数将方法添加到它们中

渲染

矢量渲染器实现的基类(SVGCanvas)。处理渲染器的DOM容器,其边界和缩放动画。A Renderer作为所有Paths 的隐式图层组- 渲染器本身可以添加或删除到地图。所有路径都使用渲染器,它可以是隐式的(地图将决定渲染器的类型并自动使用它)或显式(使用renderer路径选项)。不要直接使用这个类,而是使用SVGCanvas不是。

配置

配置 类型 默认 描述
padding Number 0.1 在地图视图周围(相对于其大小)扩展剪辑区域的程度是多少,例如,0.1将是每个方向上的地图视图的10%
tolerance Number 0 围绕地图上的路径/对象延伸点击容差的程度
配置 类型 默认 描述
pane String 'overlayPane' 默认情况下,图层将添加到地图的叠加窗格中覆盖此选项将导致默认情况下将图层放置在另一个窗格上。
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
update Event 当渲染器更新其边界,居中和缩放时触发,例如当其地图移动时
事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)

事件对象

每当从继承的类Evented触发事件时,将使用事件参数调用侦听器函数,该事件参数是包含有关事件的信息的普通对象。例如:

map.on('click', function(ev) {
    alert(ev.latlng); // ev is an event object (MouseEvent in this case)
});

可用信息取决于事件类型:

事件

基本事件对象。所有其他事件对象也包含这些属性。
属性 类型 描述
type String 事件类型(例如'click')。
target Object 触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。
sourceTarget Object 最初触发事件的对象。对于非传播事件,这将与target
propagatedFrom Object 对于传播事件,将事件传播到其事件父级的最后一个对象。
layer Object 已过时。同样的propagatedFrom

的KeyboardEvent

属性 类型 描述
originalEvent DOMEvent 触发bm事件的原始DOMKeyboardEvent
属性 类型 描述
type String 事件类型(例如'click')。
target Object 触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。
sourceTarget Object 最初触发事件的对象。对于非传播事件,这将与target
propagatedFrom Object 对于传播事件,将事件传播到其事件父级的最后一个对象。
layer Object 已过时。同样的propagatedFrom

的MouseEvent

属性 类型 描述
latlng LatLng 鼠标事件发生的地理位置。
layerPoint Point 鼠标事件相对于地图图层发生的点的像素坐标。
containerPoint Point 鼠标事件发生点相对于地图сontainer的像素坐标。
originalEvent DOMEvent 触发bm事件的原始DOMMouseEventDOMTouchEvent
属性 类型 描述
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 tile元素(图片)。
coords Point 使用tile的x,, yz(缩放级别)坐标指向对象
属性 类型 描述
type String 事件类型(例如'click')。
target Object 触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。
sourceTarget Object 最初触发事件的对象。对于非传播事件,这将与target
propagatedFrom Object 对于传播事件,将事件传播到其事件父级的最后一个对象。
layer Object 已过时。同样的propagatedFrom

TileErrorEvent

属性 类型 描述
tile HTMLElement tile元素(图片)。
coords Point 使用tile的x,, yz(缩放级别)坐标指向对象
error * 错误传递给tile的done()回调。

ResizeEvent

属性 类型 描述
oldSize Point 调整大小事件之前的旧大小。
newSize Point 调整大小事件后的新大小。
属性 类型 描述
type String 事件类型(例如'click')。
target Object 触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。
sourceTarget Object 最初触发事件的对象。对于非传播事件,这将与target
propagatedFrom Object 对于传播事件,将事件传播到其事件父级的最后一个对象。
layer Object 已过时。同样的propagatedFrom

GeoJSONEvent

属性 类型 描述
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 打开或关闭的弹出窗口。
属性 类型 描述
type String 事件类型(例如'click')。
target Object 触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。
sourceTarget Object 最初触发事件的对象。对于非传播事件,这将与target
propagatedFrom Object 对于传播事件,将事件传播到其事件父级的最后一个对象。
layer Object 已过时。同样的propagatedFrom

TooltipEvent

属性 类型 描述
tooltip Tooltip 打开或关闭的工具提示。
属性 类型 描述
type String 事件类型(例如'click')。
target Object 触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。
sourceTarget Object 最初触发事件的对象。对于非传播事件,这将与target
propagatedFrom Object 对于传播事件,将事件传播到其事件父级的最后一个对象。
layer Object 已过时。同样的propagatedFrom

DragEndEvent

属性 类型 描述
distance Number 移动可拖动元素的距离(以像素为单位)。
属性 类型 描述
type String 事件类型(例如'click')。
target Object 触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。
sourceTarget Object 最初触发事件的对象。对于非传播事件,这将与target
propagatedFrom Object 对于传播事件,将事件传播到其事件父级的最后一个对象。
layer Object 已过时。同样的propagatedFrom

ZoomAnimEvent

属性 类型 描述
center LatLng 当前的地图中心
zoom Number 地图的当前缩放级别
noUpdate Boolean 层是否应该由于此事件而更新其内容
属性 类型 描述
type String 事件类型(例如'click')。
target Object 触发事件的对象。对于传播事件,传播链中触发事件的最后一个对象。
sourceTarget Object 最初触发事件的对象。对于非传播事件,这将与target
propagatedFrom Object 对于传播事件,将事件传播到其事件父级的最后一个对象。
layer Object 已过时。同样的propagatedFrom

DivOverlay

BM.Popup和BM.Tooltip的基本模型。继承自己的自定义弹出窗口,如插件。

选项

配置 类型 默认 描述
offset Point Point(0, 7) 弹出位置的偏移量。用于在某些叠加层上打开弹出窗口时控制弹出窗口的锚点。
className String '' 要分配给弹出窗口的自定义CSS类名称。
pane String 'popupPane' Map pane 弹出窗口将被添加的位置。
配置 类型 默认 描述
attribution String null 要在归属控件中显示的字符串,描述图层数据,例如“©Mapbox”。

活动

事件 数据 描述
add Event 将图层添加到地图后触发
remove Event 从地图中删除图层后触发
事件 数据 描述
popupopen PopupEvent 打开绑定到此图层的弹出窗口时触发
popupclose PopupEvent 绑定到此图层的弹出窗口关闭时触发
事件 数据 描述
tooltipopen TooltipEvent 打开绑定到此图层的工具提示时触发。
tooltipclose TooltipEvent 绑定到此图层的工具提示关闭时触发。

方法

方法 返回 描述
addTo( <Map|LayerGroup> map) this

将图层添加到给定的地图或图层组。

remove() this

从当前处于活动状态的地图中删除图层。

removeFrom( <Map> map) this

从给定的地图中删除图层

getPane( <String> name?) HTMLElement

返回HTMLElement表示地图上命名窗格的内容。如果name省略,则返回此图层的窗格。

getAttribution() String

由the使用attribution control,返回归属选项

方法 返回 描述
bindPopup( <String|HTMLElement|Function|Popup> content, <Popup options> options?) this

使用传递content弹出窗口绑定到图层,并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindPopup() this

删除以前绑定的弹出窗口bindPopup

openPopup( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认弹出锚点处打开绑定弹出窗口

closePopup() this

如果已打开,则关闭绑定到此图层的弹出窗口。

togglePopup() this

打开或关闭绑定到此图层的弹出窗口,具体取决于其当前状态。

isPopupOpen() boolean

返回true如果绑定到该层的弹出当前处于打开状态。

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

设置绑定到此图层的弹出窗口的内容。

getPopup() Popup

返回绑定到此图层的弹出窗口。

方法 返回 描述
bindTooltip( <String|HTMLElement|Function|Tooltip> content, <Tooltip options> options?) this

使用传递content工具提示绑定到图层并设置必要的事件侦听器。如果a Function被传递,它将接收图层作为第一个参数,并应返回一个StringHTMLElement

unbindTooltip() this

删除以前绑定的工具提示bindTooltip

openTooltip( <LatLng> latlng?) this

latlng如果未latlng传递,则在指定或默认工具提示锚点处打开绑定工具提示

closeTooltip() this

如果已打开,则关闭绑定到此图层的工具提示。

toggleTooltip() this

打开或关闭绑定到此图层的工具提示,具体取决于其当前状态。

isTooltipOpen() boolean

返回true绑定到此图层的工具提示当前是否打开。

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

设置绑定到此图层的工具提示的内容。

getTooltip() Tooltip

返回绑定到此图层的工具提示。

方法 返回 描述
on( <String> type, <Function> fn, <Object> context?) this

将侦听器函数(fn添加到对象的特定事件类型。您可以选择指定侦听器的上下文(this关键字指向的对象)。您还可以传递多个以空格分隔的类型(例如'click dblclick')。

on( <Object> eventMap) this

添加一组类型/侦听器对,例如 {click: onClick, mousemove: onMouseMove}

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

删除以前添加的侦听器功能。如果未指定任何函数,它将从对象中删除该特定事件的所有侦听器。请注意,如果您将自定义上下文传递给on,则必须传递相同的上下文off才能删除侦听器。

off( <Object> eventMap) this

删除一组类型/侦听器对。

off() this

删除对象上所有事件的所有侦听器。

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

触发指定类型的事件。您可以选择提供数据对象 - 侦听器函数的第一个参数将包含其属性。该事件可以选择性地传播给事件父母。

listens( <String> type) Boolean

返回true如果一个特定的事件类型有附带任何听众。

once() this

表现为on(…),除了监听器只会被触发一次然后被删除。

addEventParent( <Evented> obj) this

添加事件父级 - Evented将接收传播事件的事件

removeEventParent( <Evented> obj) this

删除事件父级,因此它将停止接收传播的事件

addEventListener() this

别名来 on(…)

removeEventListener() this

别名来 off(…)

clearAllEventListeners() this

别名来 off()

addOneTimeEventListener() this

别名来 once(…)

fireEvent() this

别名来 fire(…)

hasEventListeners() Boolean

别名来 listens(…)