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() 参数:无
|
getPosition |
getPosition() 参数:无
返回值:
LatLng|null|undefined 此信息窗口的 LatLng 位置。 |
getZIndex |
getZIndex() 参数:无
返回值:
number 此信息窗口的 zIndex。 |
open |
open([options, anchor]) 参数:
返回值:None
在指定地图上打开此信息窗口。信息窗口可以与锚点关联(可选)。在核心 API 中,唯一的锚点是 Marker 类。不过,锚点可以是任何用于公开 LatLng position 属性的 MVCObject,也可以是用于计算 pixelOffset 的 Point anchorPoint 属性(可选)。anchorPoint 是从锚点位置到信息窗口顶端的偏移量。建议使用 InfoWindowOpenOptions 接口作为此方法的单个参数。为防止在打开时浏览器焦点发生变化,请将 InfoWindowOpenOptions.shouldFocus 设置为 false 。 |
setContent |
setContent([content]) 返回值:None
|
setOptions |
setOptions([options]) 参数:
返回值:None
|
setPosition |
setPosition([position]) 参数:
返回值:None
|
setZIndex |
setZIndex(zIndex) 参数:
返回值:None
|
继承的样式:addListener 、bindTo 、get 、notify 、set 、setValues 、unbind 、unbindAll
|
活动 | |
---|---|
close |
function() 参数:None
只要 InfoWindow 关闭,系统就会触发此事件。例如,这可以通过以下方式实现:调用 InfoWindow.close 方法、按 Esc 键关闭 InfoWindow,或者点击关闭按钮或将 InfoWindow 移动到另一个地图。 |
closeclick |
function() 参数:None
点击关闭按钮时会触发此事件。 |
content_changed |
function() 参数:None
内容属性更改时会触发此事件。 |
domready |
function() 参数:None
当包含 InfoWindow 的内容的 <div> 附加到 DOM 时,会触发此事件。如果您要动态构建信息窗口内容,则可能希望监视此事件。 |
headercontent_changed |
function() 参数:None
当 headerContent 属性更改时会触发此事件。 |
headerdisabled_changed |
function() 参数:None
当 headerDisabled 属性更改时会触发此事件。 |
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 |
要在信息窗口中显示的内容。它可以是 HTML 元素、纯文本字符串或包含 HTML 的字符串。信息窗口会根据内容调整大小。要设置内容的具体大小,请将内容设置为相应大小的 HTML 元素。 |
disableAutoPan optional |
类型:
boolean optional 默认值:
false 停用平移地图的功能,让信息窗口在打开时完全显示出来。 |
headerContent optional |
要在信息窗口标题行中显示的内容。这可以是 HTML 元素,也可以是包含 HTML 的字符串。信息窗口会根据内容调整大小。要为标头内容设置明确的大小,请将 headerContent 设置为相应大小的 HTML 元素。 |
headerDisabled optional |
类型:
boolean optional 停用信息窗口中的整个标题行。当设置为 true 时,系统会移除标题,以隐藏标题内容和关闭按钮。 |
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 |
类型:
MVCObject|AdvancedMarkerElement optional 此信息窗口将定位到的锚点。如果锚点为非空,信息窗口将位于锚点的顶部中心。信息窗口将与锚点(如果有)在同一地图或全景图片上渲染。 |
map optional |
类型:
Map|StreetViewPanorama optional 要在其中渲染此 InfoWindow 的地图或全景图片。 |
shouldFocus optional |
类型:
boolean optional 是否应在信息窗口打开时将焦点移至其中。如果此属性未设置或设为 null 或 undefined ,系统会使用启发法来决定是否应移动焦点。建议您根据自己的需求明确设置此属性,因为启发法可能会发生变化,并且可能并不适用于所有用例。 |