InfoWindow 类
google.maps.InfoWindow
class
extends MVCObject
library "maps", "streetView"
叠加层外观与提示框类似,通常会连接到某个标记。
const {InfoWindow} = await google.maps.importLibrary("maps");
const {InfoWindow} = await google.maps.importLibrary("streetView");
构造函数 | |
|---|---|
InfoWindow |
InfoWindow([opts])参数:
使用给定选项创建信息窗口。信息窗口可以放置在地图上的特定位置或标记上方,具体取决于选项中的指定内容。除非停用自动平移,否则 InfoWindow 在打开时会平移地图,以便让自己可见。构建 InfoWindow 后,您必须调用 open 才能在地图上显示它。用户可以点击信息窗口上的关闭按钮将其从地图中关闭,开发人员也可以调用 close() 函数实现同样的效果。 |
属性 | |
|---|---|
isOpen
readonly |
类型:
boolean检查 InfoWindow 是否已打开。 |
方法 | |
|---|---|
close |
close()参数:无
返回值:无
关闭此信息窗口,方法是将其从 DOM 结构中删除。 |
focus |
focus()参数:无
返回值:无
将焦点设置在此 InfoWindow 上。您不妨考虑将此方法与 visible 事件搭配使用,以确保在将焦点设置到 InfoWindow 之前,该元素是可见的。不可见的 InfoWindow 无法获得焦点。 |
getContent |
getContent()参数:无
|
getHeaderContent |
getHeaderContent()参数:无
返回值:
string|Element|Text|null|undefined此 InfoWindow 的标题内容。请参阅 InfoWindowOptions.headerContent。 |
getHeaderDisabled |
getHeaderDisabled()参数:无
返回值:
boolean|undefined 整个标题行是否已停用。请参阅 InfoWindowOptions.headerDisabled。 |
getPosition |
getPosition()参数:无
返回值:
LatLng|null|undefined 此 InfoWindow 的 LatLng 位置。 |
getZIndex |
getZIndex()参数:无
返回值:
number 此 InfoWindow 的 zIndex。 |
open |
open([options, anchor])参数:
返回值:无
在给定地图上打开此 InfoWindow。(可选)InfoWindow 可以与锚点相关联。在核心 API 中,唯一的锚点是 Marker 类。不过,定位点可以是任何公开 LatLng position 属性和可选 Point anchorPoint 属性(用于计算 pixelOffset,请参阅 InfoWindowOptions)的 MVCObject。anchorPoint 是从锚点位置到 InfoWindow 尖端的偏移量。建议使用 InfoWindowOpenOptions 接口作为此方法的唯一参数。如需防止在打开时更改浏览器焦点,请将 InfoWindowOpenOptions.shouldFocus 设置为 false。 |
setContent |
setContent([content])返回值:无
|
setHeaderContent |
setHeaderContent([headerContent])参数:
返回值:无
|
setHeaderDisabled |
setHeaderDisabled([headerDisabled])参数:
返回值:无
|
setOptions |
setOptions([options])参数:
返回值:无
|
setPosition |
setPosition([position])参数:
返回值:无
|
setZIndex |
setZIndex(zIndex)参数:
返回值:无
|
继承的方法:
addListener、bindTo、get、notify、set、setValues、unbind、unbindAll
| |
事件 | |
|---|---|
close |
function()参数:无
每当 InfoWindow 关闭时,系统都会触发此事件。例如,这可能是因为调用了 InfoWindow.close 方法、按了 Esc 键关闭 InfoWindow、点击了关闭按钮或将 InfoWindow 移到了其他地图。 |
closeclick |
function()参数:无
点击关闭按钮时会触发此事件。 |
content_changed |
function()参数:无
内容属性更改时会触发此事件。 |
domready |
function()参数:无
当包含 InfoWindow 内容的 <div> 附加到 DOM 时,系统会触发此事件。如果您要动态构建信息窗口内容,则可能希望监视此事件。 |
headercontent_changed |
function()参数:无
当 headerContent 属性发生更改时,会触发此事件。 |
headerdisabled_changed |
function()参数:无
当 headerDisabled 属性发生更改时,会触发此事件。 |
position_changed |
function()参数:无
位置属性更改时会触发此事件。 |
visible |
function()参数:无
当 InfoWindow 完全可见时,会触发此事件。当 InfoWindow 移出屏幕然后又移回屏幕时,不会触发此事件。 |
zindex_changed |
function()参数:无
当 InfoWindow 的 zIndex 发生更改时,会触发此事件。 |
InfoWindowOptions 接口
google.maps.InfoWindowOptions
接口
InfoWindowOptions 对象,用于定义可在 InfoWindow 上设置的属性。
属性 | |
|---|---|
ariaLabel
可选 |
类型:
string optional要分配给 InfoWindow 的 AriaLabel。 |
content
可选 |
要在 InfoWindow 中显示的内容。这可以是 HTML 元素、纯文本字符串或包含 HTML 的字符串。InfoWindow 的大小将根据内容进行调整。要设置内容的具体大小,请将内容设置为相应大小的 HTML 元素。 |
disableAutoPan
可选 |
类型:
boolean optional默认值:
false停用平移地图功能,以便在信息窗口打开时使其完全可见。 |
headerContent
可选 |
要在 InfoWindow 标题行中显示的内容。这可以是 HTML 元素,也可以是纯文本字符串。InfoWindow 的大小将根据内容进行调整。如需为标题内容设置明确的大小,请将 headerContent 设置为具有该大小的 HTML 元素。 |
headerDisabled
可选 |
类型:
boolean optional停用 InfoWindow 中的整个标题行。如果设置为 true,系统会移除标题,从而隐藏标题内容和关闭按钮。 |
maxWidth
可选 |
类型:
number optionalInfoWindow 的最大宽度,无论内容的宽度如何。只有在调用 open() 之前设置此值,系统才会考虑使用此值。如需在更改内容时更改最大宽度,请依次调用 close()、setOptions() 和 open()。 |
minWidth
可选 |
类型:
number optionalInfoWindow 的最小宽度,不考虑内容的宽度。使用此属性时,强烈建议将 minWidth 设置为小于地图宽度(以像素为单位)的值。只有在调用 open() 之前设置此值,系统才会考虑使用此值。如需在更改内容时更改最小宽度,请依次调用 close()、setOptions() 和 open()。 |
pixelOffset
可选 |
类型:
Size optional信息窗口尖端与地图上信息窗口锚定地理坐标点之间的偏移量(以像素为单位)。如果信息窗口是通过锚点打开的,则 pixelOffset 将根据锚点的 anchorPoint 属性进行计算。 |
position
可选 |
类型:
LatLng|LatLngLiteral optional显示此 InfoWindow 的 LatLng。如果 InfoWindow 是通过锚点打开的,则系统会改用锚点的位置。 |
zIndex
可选 |
类型:
number optional所有信息窗口按照其 zIndex 的顺序显示在地图上,值较高的信息窗口会显示在值较低的信息窗口前面。默认情况下,InfoWindow 会根据其纬度显示,纬度较低的 InfoWindow 会显示在纬度较高的 InfoWindow 前面。信息窗口始终在标记前面显示。 |
InfoWindowOpenOptions 接口
google.maps.InfoWindowOpenOptions
接口
用于打开 InfoWindow 的选项
属性 | |
|---|---|
anchor
可选 |
类型:
MVCObject|AdvancedMarkerElement optional此 InfoWindow 将定位到的锚点。如果锚点不为 null,InfoWindow 将位于锚点的顶部中心。InfoWindow 将在与锚点(如有)相同的地图或全景图片上呈现。 |
map
可选 |
类型:
Map|StreetViewPanorama optional要在其上呈现此 InfoWindow 的地图或全景图片。 |
shouldFocus
可选 |
类型:
boolean optional是否在 InfoWindow 打开后将焦点移至其中。如果此属性未设置,或者设置为 null 或 undefined,系统会使用启发法来决定是否应移动焦点。建议您根据需要明确设置此属性,因为启发法可能会发生变化,并且可能不适用于所有用例。 |