Info Window

InfoWindow

google.maps.InfoWindow

叠加层外观与提示框类似,通常会连接到某个标记。

此类扩展了 MVCObject

通过调用 const {InfoWindow} = await google.maps.importLibrary("maps")const {InfoWindow} = await google.maps.importLibrary("streetView") 进行访问。请参阅 Maps JavaScript API 中的库

InfoWindow
InfoWindow([opts])
参数
用于创建带有指定选项的信息窗口。信息窗口可以放置在地图上的特定位置或标记上方,具体取决于选项中指定的内容。除非停用自动平移功能,否则信息窗口会在打开后平移地图,以便让自己显示出来。信息窗口构建后,您必须调用 open 函数,才能在地图上显示该窗口。用户可以点击信息窗口上的关闭按钮将其从地图中关闭,开发人员也可以调用 close() 函数实现同样的效果。
close
close()
参数:无
返回值:None
关闭此信息窗口,方法是将其从 DOM 结构中删除。
focus
focus()
参数:无
返回值:None
将焦点设置在此 InfoWindow 上。不妨考虑将此方法与 visible 事件结合使用,以确保 InfoWindow 在设置焦点之前可见。不可见的 InfoWindow 无法聚焦。
getContent
getContent()
参数:无
返回值string|Element|Text|null|undefined 此信息窗口的内容。与之前为内容设置的相同。
getPosition
getPosition()
参数:无
返回值LatLng|null|undefined 此信息窗口的 LatLng 位置。
getZIndex
getZIndex()
参数:无
返回值number 此信息窗口的 zIndex。
open
open([options, anchor])
参数
  • optionsInfoWindowOpenOptions|Map|StreetViewPanorama optional 一个 InfoWindowOpenOptions 对象(推荐)或用于渲染此 InfoWindow 的地图|全景。
  • anchorMVCObject|AdvancedMarkerElement optional此信息窗口将定位到的锚点。如果锚点为非空,信息窗口将位于锚点的顶部中心。信息窗口将与锚点(如果有)在同一地图或全景图片上渲染。
返回值:None
在指定地图上打开此信息窗口。信息窗口可以与锚点关联(可选)。在核心 API 中,唯一的锚点是 Marker 类。不过,锚点可以是任何用于公开 LatLng position 属性的 MVCObject,也可以是用于计算 pixelOffset 的 Point anchorPoint 属性(可选)。anchorPoint 是从锚点位置到信息窗口顶端的偏移量。建议使用 InfoWindowOpenOptions 接口作为此方法的单个参数。为防止在打开时浏览器焦点发生变化,请将 InfoWindowOpenOptions.shouldFocus 设置为 false
setContent
setContent([content])
参数
  • contentstring|Element|Text optional 此信息窗口要显示的内容。
返回值:None
setOptions
setOptions([options])
参数
返回值:None
setPosition
setPosition([position])
参数
返回值:None
setZIndex
setZIndex(zIndex)
参数
  • zIndexnumber 此信息窗口的 Z-index。Z-index 值较大的信息窗口会显示在所有其他 Z-index 值较低的信息窗口的前面。
返回值:None
继承的样式addListenerbindTogetnotifysetsetValuesunbindunbindAll
close
function()
参数:None
只要 InfoWindow 关闭,系统就会触发此事件。例如,这可以通过以下方式实现:调用 InfoWindow.close 方法、按 Esc 键关闭 InfoWindow,或者点击关闭按钮或将 InfoWindow 移动到另一个地图。
closeclick
function()
参数:None
点击关闭按钮时会触发此事件。
content_changed
function()
参数:None
内容属性更改时会触发此事件。
domready
function()
参数:None
当包含 InfoWindow 的内容的 <div> 附加到 DOM 时,会触发此事件。如果您要动态构建信息窗口内容,则可能希望监视此事件。
position_changed
function()
参数:None
位置属性更改时会触发此事件。
visible
function()
参数:None
InfoWindow 完全可见时会触发此事件。当 InfoWindow 平移离开再回到屏幕上时,不会触发此事件。
zindex_changed
function()
参数:None
InfoWindow 的 zIndex 更改时会触发此事件。

InfoWindowOptions 接口

google.maps.InfoWindowOptions 接口

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

ariaLabel optional
类型string optional
要分配给信息窗口的 AriaLabel。
content optional
类型string|Element|Text optional
要在信息窗口中显示的内容。它可以是 HTML 元素、纯文本字符串或包含 HTML 的字符串。信息窗口会根据内容调整大小。要设置内容的具体大小,请将内容设置为相应大小的 HTML 元素。
disableAutoPan optional
类型boolean optional
默认值false
停用平移地图的功能,让信息窗口在打开时完全显示出来。
maxWidth optional
类型number optional
信息窗口的最大宽度(不考虑内容的宽度)。只有在调用 open() 之前设置此值时,才会考虑此值。如需在更改内容时更改最大宽度,请调用 close()setOptions(),然后调用 open()
minWidth optional
类型number optional
信息窗口的最小宽度(不考虑内容的宽度)。使用此属性时,强烈建议将 minWidth 设为小于地图宽度的值(以像素为单位)。只有在调用 open() 之前设置此值时,才会考虑此值。如需在更改内容时更改最小宽度,请调用 close()setOptions(),然后调用 open()
pixelOffset optional
类型Size optional
信息窗口的顶端与地图上锚定信息窗口的地理坐标点之间的偏移量(以像素为单位)。如果信息窗口是通过锚点打开的,则系统将根据锚点的 anchorPoint 属性计算 pixelOffset
position optional
类型LatLng|LatLngLiteral optional
显示此信息窗口的 LatLng。如果信息窗口是通过锚点打开的,则改为使用锚点的位置。
zIndex optional
类型number optional
所有信息窗口按其 zIndex 的顺序显示在地图上,值较高的信息窗口显示在值较低的 InfoWindows 之前。默认情况下,信息窗口按纬度显示,纬度较低的信息窗口显示在纬度较高的信息窗口前面。信息窗口始终在标记前面显示。

InfoWindowOpenOptions 接口

google.maps.InfoWindowOpenOptions 接口

用于打开信息窗口的选项

anchor optional
此信息窗口将定位到的锚点。如果锚点为非空,信息窗口将位于锚点的顶部中心。信息窗口将与锚点(如果有)在同一地图或全景图片上渲染。
map optional
类型Map|StreetViewPanorama optional
要在其中渲染此 InfoWindow 的地图或全景图片。
shouldFocus optional
类型boolean optional
是否应在信息窗口打开时将焦点移至其中。如果此属性未设置或设为 nullundefined,系统会使用启发法来决定是否应移动焦点。建议您根据自己的需求明确设置此属性,因为启发法可能会发生变化,并且可能并不适用于所有用例。