Marker (legacy)

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()
参数:无
返回值string|Icon|Symbol|null|undefined
获取 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
获取用于互动的 Marker 的形状。请参阅MarkerOptions.shapeMarkerShape
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])
参数
  • animationAnimation optional 要播放的动画。
返回值:None
启动动画。系统将会取消所有正在播放的动画。目前支持的动画包括:Animation.BOUNCEAnimation.DROP。传入 null 将导致所有动画停止播放。
setClickable
setClickable(flag)
参数
  • flagboolean 如果为 true,则可以点击标记。
返回值:None
设置 Marker 是否可点击。
setCursor
setCursor([cursor])
参数
  • cursorstring optional 鼠标光标类型。
返回值:None
设置悬停时显示的鼠标光标类型。
setDraggable
setDraggable(flag)
参数
  • flagboolean optional 如果为 true,则可以拖动标记。
返回值: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])
参数
  • opacitynumber optional 介于 0.0(透明)和 1.0(不透明)之间的数字。
返回值:None
设置 Marker 的不透明度。
setOptions
setOptions(options)
参数
返回值:None
设置 Marker 的选项。
setPosition
setPosition([latlng])
参数
返回值:None
设置 Marker 的帖子。
setShape
setShape([shape])
参数
返回值:None
设置用于互动的 Marker 的形状。请参阅MarkerOptions.shapeMarkerShape
setTitle
setTitle([title])
参数
  • titlestring optional
返回值:None
设置 Marker 提示的标题。请参阅MarkerOptions.title
setVisible
setVisible(visible)
参数
  • visibleboolean 如果为 true,标记可见
返回值:None
设置 Marker 是否可见。
setZIndex
setZIndex([zIndex])
参数
  • zIndexnumber optional
返回值:None
设置 Marker 的 zIndex。请参阅MarkerOptions.zIndex
继承的样式addListenerbindTogetnotifysetsetValuesunbindunbindAll
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 属性更改时会触发此事件。
rightclick
function(event)
参数
Marker 进行右键点击时会触发此事件。

MarkerOptions 接口

google.maps.MarkerOptions 接口

MarkerOptions 对象,用于定义可在 Marker 上设置的属性。

anchorPoint optional
类型Point optional
从标记位置到信息窗口顶端的偏移量,信息窗口已使用标记作为锚点。
animation optional
类型Animation optional
默认值null
将标记添加到地图时所播放的动画。
clickable optional
类型boolean optional
默认值true
如果为 true,则标记会收到鼠标和触摸事件。
BetacollisionBehavior optional
类型string|CollisionBehavior optional
默认值null
为矢量地图上的标记设置冲突行为。
crossOnDrag optional
类型boolean optional
默认值true
如果为 false,则停用拖动标记时标记下方的叉号。
cursor optional
类型string optional
默认值pointer
鼠标悬停时显示的鼠标光标类型。
draggable optional
类型boolean optional
默认值false
如果为 true,则可以拖动标记。
icon optional
类型string|Icon|Symbol 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 接口

此对象用于定义标记图片的可点击区域。形状由 typecoord 这两个属性组成,这两个属性用于定义图片的不透明区域。

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
描述形状的类型,可以是 circlepolyrect

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
符号的旋转角度,以顺时针度数表示。IconSequencefixedRotationfalse 的符号相对于其所在边缘的角度旋转。
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。这种类型的动画通常在创建标记期间指定。