Marker 类
google.maps.Marker
类
此类扩展了 MVCObject
。
通过调用 const {Marker} = await google.maps.importLibrary("marker")
进行访问。请参阅 Maps JavaScript API 中的库。
构造函数 | |
---|---|
Marker |
Marker([opts]) 参数:
使用指定选项创建标记。如果指定了地图,则标记会在地图构建时添加到地图中。请注意,您必须设置标记的显示位置。 |
常量 | |
---|---|
MAX_ZINDEX |
API 分配给标记的最大默认 Z-index。您可以设置较高的 Z-index 值,以使相关标记显示在前面。 |
方法 | |
---|---|
getAnimation |
getAnimation() 参数:无
返回值:
Animation|null|undefined 获取当前正在运行的动画。 |
getClickable |
getClickable() 参数:无
返回值:如果标记可点击,则为
boolean True。获取 Marker 的可点击状态。 |
getCursor |
getCursor() 参数:无
返回值:
string|null|undefined 获取悬停时显示的鼠标光标类型。 |
getDraggable |
getDraggable() 参数:无
返回值:如果标记可拖动,则返回值
boolean 。获取 Marker 的可拖动状态。 |
getIcon |
getIcon() 参数:无
获取 Marker 的图标。请参阅MarkerOptions.icon 。 |
getLabel |
getLabel() 参数:无
返回值:
MarkerLabel|string|null|undefined 获取 Marker 的标签。请参阅MarkerOptions.label 。 |
getMap |
getMap() 参数:无
获取渲染 Marker 的地图或全景图片。 |
getOpacity |
getOpacity() 参数:无
返回值:
number|null|undefined 是一个介于 0.0 和 1.0 之间的数字。获取 Marker 的不透明度。 |
getPosition |
getPosition() 参数:无
返回值:
LatLng|null|undefined 获取 Marker 的位置。 |
getShape |
getShape() 参数:无
返回值:
MarkerShape|null|undefined |
getTitle |
getTitle() 参数:无
返回值:
string|null|undefined 获取 Marker 提示的标题。请参阅MarkerOptions.title 。 |
getVisible |
getVisible() 参数:无
返回值:如果标记可见,则返回值
boolean 。获取 Marker 的可见性。 |
getZIndex |
getZIndex() 参数:无
返回值:标记的
number|null|undefined zIndex。获取 Marker 的 zIndex。请参阅MarkerOptions.zIndex 。 |
setAnimation |
setAnimation([animation]) 参数:
返回值:None
|
setClickable |
setClickable(flag) 参数:
返回值:None
设置 Marker 是否可点击。 |
setCursor |
setCursor([cursor]) 参数:
返回值:None
设置悬停时显示的鼠标光标类型。 |
setDraggable |
setDraggable(flag) 参数:
返回值:None
设置 Marker 是否可拖动。 |
setIcon |
setIcon([icon]) 返回值:None
设置 Marker 的图标。请参阅MarkerOptions.icon 。 |
setLabel |
setLabel([label]) 参数:
返回值:None
为 Marker 设置标签。请参阅MarkerOptions.label 。 |
setMap |
setMap(map) 参数:
返回值:None
在指定地图或全景图片上渲染 Marker 。如果地图设置为null ,标记将被移除。 |
setOpacity |
setOpacity([opacity]) 参数:
返回值:None
设置 Marker 的不透明度。 |
setOptions |
setOptions(options) 参数:
返回值:None
设置 Marker 的选项。 |
setPosition |
setPosition([latlng]) 参数:
返回值:None
设置 Marker 的帖子。 |
setShape |
setShape([shape]) 参数:
返回值:None
|
setTitle |
setTitle([title]) 参数:
返回值:None
设置 Marker 提示的标题。请参阅MarkerOptions.title 。 |
setVisible |
setVisible(visible) 参数:
返回值:None
设置 Marker 是否可见。 |
setZIndex |
setZIndex([zIndex]) 参数:
返回值:None
设置 Marker 的 zIndex。请参阅MarkerOptions.zIndex 。 |
继承的样式:addListener 、bindTo 、get 、notify 、set 、setValues 、unbind 、unbindAll
|
活动 | |
---|---|
animation_changed |
function() 参数:None
当 Marker 动画属性更改时会触发此事件。 |
click |
function(event) 参数:
点击 Marker 图标时会触发此事件。 |
clickable_changed |
function() 参数:None
当 Marker 可点击属性更改时会触发此事件。 |
contextmenu |
function(event) 参数:
对 Marker 触发 DOM contextmenu 事件时会触发此事件 |
cursor_changed |
function() 参数:None
当 Marker 游标属性更改时会触发此事件。 |
dblclick |
function(event) 参数:
当用户双击 Marker 图标时会触发此事件。 |
drag |
function(event) 参数:
当用户拖动 Marker 时,系统会反复触发此事件。 |
dragend |
function(event) 参数:
当用户停止拖动 Marker 时会触发此事件。 |
draggable_changed |
function() 参数:None
当 Marker 可拖动属性更改时会触发此事件。 |
dragstart |
function(event) 参数:
当用户开始拖动 Marker 时会触发此事件。 |
flat_changed |
function() 参数:None
当 Marker 平面属性更改时会触发此事件。 |
icon_changed |
function() 参数:None
当 Marker 图标属性更改时会触发此事件。 |
mousedown |
function(event) 参数:
对 Marker 执行 mousedown 时会触发此事件。 |
mouseout |
function(event) 参数:
当鼠标离开 Marker 图标区域时会触发此事件。 |
mouseover |
function(event) 参数:
当鼠标进入 Marker 图标的区域时会触发此事件。 |
mouseup |
function(event) 参数:
对 Marker 进行 mouseup 时会触发此事件。 |
position_changed |
function() 参数:None
当 Marker 位置属性更改时会触发此事件。 |
shape_changed |
function() 参数:None
当 Marker 形状属性更改时会触发此事件。 |
title_changed |
function() 参数:None
当 Marker 标题属性更改时会触发此事件。 |
visible_changed |
function() 参数:None
当 Marker 可见属性更改时会触发此事件。 |
zindex_changed |
function() 参数:None
当 Marker zIndex 属性更改时会触发此事件。 |
|
function(event) 参数:
对 Marker 进行右键点击时会触发此事件。 |
MarkerOptions 接口
google.maps.MarkerOptions
接口
MarkerOptions 对象,用于定义可在 Marker 上设置的属性。
属性 | |
---|---|
anchorPoint optional |
类型:
Point optional 从标记位置到信息窗口顶端的偏移量,信息窗口已使用标记作为锚点。 |
animation optional |
类型:
Animation optional 默认值:
null 将标记添加到地图时所播放的动画。 |
clickable optional |
类型:
boolean optional 默认值:
true 如果为 true ,则标记会收到鼠标和触摸事件。 |
|
类型:
string|CollisionBehavior optional 默认值:
null 为矢量地图上的标记设置冲突行为。 |
crossOnDrag optional |
类型:
boolean optional 默认值:
true 如果为 false ,则停用拖动标记时标记下方的叉号。 |
cursor optional |
类型:
string optional 默认值:
pointer 鼠标悬停时显示的鼠标光标类型。 |
draggable optional |
类型:
boolean optional 默认值:
false 如果为 true ,则可以拖动标记。 |
icon optional |
前景的图标。如果提供了一个字符串,系统会将其视为 Icon ,并将字符串视为 url 。 |
label optional |
类型:
string|MarkerLabel optional 默认值:
null 向标记添加标签。标记标签是显示在标记内的字母或数字。标签可以是字符串,也可以是 MarkerLabel 对象。如果提供了此属性,但未提供 MarkerOptions.title ,则系统会将无障碍文本(例如用于屏幕阅读器的文本)与所提供标签的文本一起添加到标记中。请注意,label 目前仅用于未优化标记的无障碍文本。 |
map optional |
类型:
Map|StreetViewPanorama optional 要在其上显示标记的地图。地图是显示标记所必需的,如果在构建标记时未提供地图,则可以随 Marker.setMap 一起提供地图。 |
opacity optional |
类型:
number optional 默认值:1.0
介于 0.0(透明)和 1.0(不透明)之间的数字。 |
optimized optional |
类型:
boolean optional 可以通过优化标记来提高性能,方法是将多个标记渲染为单个静态元素。在需要大量标记的情况下,这会非常有用。详细了解标记优化。 |
position optional |
类型:
LatLng|LatLngLiteral optional 设置标记位置。您可以构建标记,但只有在提供位置(例如,通过用户的操作或选择)后才会显示标记。如果在构建标记时未提供标记位置,可以通过 Marker.setPosition 提供标记位置。 |
shape optional |
类型:
MarkerShape optional 用于拖动/点击的图像地图区域定义。 |
title optional |
类型:
string optional 默认值:
undefined 悬停文字。如果提供了无障碍文本(例如与屏幕阅读器搭配使用),则会通过提供的值向标记添加无障碍文本。请注意, title 目前仅用于未优化标记的无障碍文本。 |
visible optional |
类型:
boolean optional 默认值:
true 如果为 true ,则标记可见。 |
zIndex optional |
类型:
number optional 所有标记均按其 zIndex 的顺序在地图上显示,值较大的标记会显示在值较小的标记之前。默认情况下,标记会按照它们在屏幕上的垂直位置来显示,位置较低的标记会显示在位置较高的标记之前。 |
CollisionBehavior 常量
google.maps.CollisionBehavior
常量
通过调用 const {CollisionBehavior} = await google.maps.importLibrary("marker")
进行访问。请参阅 Maps JavaScript API 中的库。
常量 | |
---|---|
OPTIONAL_AND_HIDES_LOWER_PRIORITY |
标记仅在未与其他标记重叠时才显示。如果两个同属于这种类型的标记发生重叠,则会显示 zIndex 较高的那个标记。如果二者的 zIndex 相同,则会显示在屏幕上纵向位置较低的那个索引。 |
REQUIRED |
始终显示标记,无论是否冲突。这是默认行为。 |
REQUIRED_AND_HIDES_OPTIONAL |
一律显示该标记(无论是否冲突),并隐藏任何与该标记重叠的 OPTIONAL_AND_HIDES_LOWER_PRIORITY 标记或标签。 |
Icon 接口
google.maps.Icon
接口
表示标记图标图像的结构。
属性 | |
---|---|
url |
类型:
string 图片或拼合图片的网址。 |
anchor optional |
类型:
Point optional 与地图上的标记位置对应的图像锚定位置。默认情况下,锚点会放置在图片底部的中心点附近。 |
labelOrigin optional |
类型:
Point optional 标签相对于图标图片左上角的原点(如果由标记提供)。默认情况下,原点位于图片的中心点。 |
origin optional |
类型:
Point optional 图片在拼合图片中的位置(如果有的话)。默认情况下,原点位于图片 (0, 0) 的左上角。 |
scaledSize optional |
类型:
Size optional 进行缩放后的整幅图片的尺寸(如果有的话)。可使用此属性伸展/收缩图片或拼合图片。 |
size optional |
类型:
Size optional 拼合图片或图片的显示尺寸。使用拼合图片时必须指定其尺寸。如果未提供尺寸,则系统会在加载图片时进行设置。 |
MarkerLabel 接口
google.maps.MarkerLabel
接口
这些选项用于指定标记标签的外观。标记标签是将显示在标记内的字符串(通常是单个字符)。如果您将其与自定义标记一起使用,可以使用 Icon
类中的 labelOrigin
属性来调整其位置。
属性 | |
---|---|
text |
类型:
string 要在标签中显示的文本。 |
className optional |
类型:
string optional 默认值:
'' (空字符串)标签元素的 className 属性(等同于元素的 class 属性)。可以添加多个以空格分隔的 CSS 类。字体颜色、大小、粗细和系列只能通过 MarkerLabel 的其他属性进行设置。如果同时使用标记冲突管理,则不应使用 CSS 类来更改标签的位置或方向(例如,使用平移和旋转)。 |
color optional |
类型:
string optional 默认值:
'black' 标签文本的颜色。 |
fontFamily optional |
类型:
string optional 标签文本的字体系列(相当于 CSS 字体系列属性)。 |
fontSize optional |
类型:
string optional 默认值:
'14px' 标签文本的字体大小(相当于 CSS font-size 属性)。 |
fontWeight optional |
类型:
string optional 标签文本的字体粗细(相当于 CSS font-weight 属性)。 |
MarkerShape 接口
google.maps.MarkerShape
接口
此对象用于定义标记图片的可点击区域。形状由 type
和 coord
这两个属性组成,这两个属性用于定义图片的不透明区域。
属性 | |
---|---|
coords |
类型:
Array<number> 此属性的格式取决于 type 的值,并遵循 http://www.w3.org/TR/REC-html40/struct/objects.html#adef-coords 上的 w3 AREA coords 规范。coords 属性是一个整数数组,用于指定形状相对于目标图片左上角的像素位置。坐标取决于 type 的值,如下所示:- circle :坐标为 [x1,y1,r] ,其中 x1,y2 为圆心的坐标,而 r 为圆的半径。- poly :坐标为 [x1,y1,x2,y2...xn,yn] ,其中每个 x,y 对都包含多边形的一个顶点的坐标。- rect :坐标为 [x1,y1,x2,y2] ,其中 x1,y1 是矩形左上角的坐标,而 x2,y2 是矩形右下角的坐标。 |
type |
类型:
string 描述形状的类型,可以是 circle 、poly 或 rect 。 |
Symbol 接口
google.maps.Symbol
接口
描述符号,它由带样式的矢量路径组成。符号可用作标记的图标,也可放置在多段线上。
属性 | |
---|---|
path |
类型:
SymbolPath|string 符号的路径(内置符号路径)或使用 SVG 路径表示法表示的自定义路径。必填。 |
anchor optional |
类型:
Point optional 默认值:
google.maps.Point(0,0) 符号相对于标记或多段线的位置。符号路径的坐标分别由锚定点的x坐标和y坐标向左和向上进行转换。该位置的表示坐标系与符号路径的坐标系相同。 |
fillColor optional |
类型:
string optional 符号的填充颜色。支持所有CSS3颜色,扩展命名的颜色除外。对于符号标记,此属性默认为“black”。对于多段线上的符号,该默认值默认为相应多段线的描边颜色。 |
fillOpacity optional |
类型:
number optional 默认值:
0 符号的填充不透明度。 |
labelOrigin optional |
类型:
Point optional 默认值:
google.maps.Point(0,0) 标签原点相对于路径起点(如果标记由标记提供)。用与符号路径相同的坐标系表示原点。此属性不用于多段线上的符号。 |
rotation optional |
类型:
number optional 默认值:
0 符号的旋转角度,以顺时针度数表示。 IconSequence 中 fixedRotation 为 false 的符号相对于其所在边缘的角度旋转。 |
scale optional |
类型:
number optional 符号大小的缩放量。对于符号标记,此值默认为 1;进行缩放后,符号可为任意大小。对于多段线上的符号,此属性默认为多段线的描边粗细;缩放后,符号必须位于尺寸为 22 像素的方形(以符号的锚点为中心)内。 |
strokeColor optional |
类型:
string optional 符号的描边颜色。支持所有CSS3颜色,扩展命名的颜色除外。对于符号标记,此属性默认为“black”。对于多段线上的符号,该默认值默认为多段线的描边颜色。 |
strokeOpacity optional |
类型:
number optional 符号的描边不透明度。对于符号标记,此值默认为 1。对于多段线上的符号,此值默认为多段线的描边不透明度。 |
strokeWeight optional |
类型:
number optional 默认值:符号的
Symbol.scale 。符号的笔触粗细。 |
SymbolPath 常量
google.maps.SymbolPath
常量
内置符号路径。
通过调用 const {SymbolPath} = await google.maps.importLibrary("core")
进行访问。请参阅 Maps JavaScript API 中的库。
常量 | |
---|---|
BACKWARD_CLOSED_ARROW |
一个向后指向的闭合箭头。 |
BACKWARD_OPEN_ARROW |
一个向后指的开放箭头。 |
CIRCLE |
圆形。 |
FORWARD_CLOSED_ARROW |
一个向前指向的闭合箭头。 |
FORWARD_OPEN_ARROW |
一个向前指的开放箭头。 |
Animation 常量
google.maps.Animation
常量
可以在标记上播放的动画。对 Marker 使用 Marker.setAnimation
方法或使用 MarkerOptions.animation
选项播放动画。
通过调用 const {Animation} = await google.maps.importLibrary("marker")
进行访问。请参阅 Maps JavaScript API 中的库。
常量 | |
---|---|
BOUNCE |
通过使用 null 调用 Marker.setAnimation ,标记会进行弹跳,直至动画停止。 |
DROP |
标记会从地图顶部掉落到其最终位置。一旦标记停止移动,动画即停止,并且 Marker.getAnimation 会返回 null 。这种类型的动画通常在创建标记期间指定。 |