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]) 参数:
使用给定选项创建信息窗口。信息窗口可放置在地图上的特定位置或标记上方,具体取决于选项中指定的内容。除非停用自动平移,否则信息窗口会在打开时平移地图以使其自身可见。构建 InfoWindow 后,您必须调用 open 才能在地图上显示它。用户可以点击信息窗口上的关闭按钮将其从地图中关闭,开发人员也可以调用 close() 函数实现同样的效果。 |
方法 | |
---|---|
close |
close() 参数:无
返回值:None
关闭此信息窗口,方法是将其从 DOM 结构中删除。 |
focus |
focus() 参数:无
返回值:None
将焦点设置为此 InfoWindow 。您不妨考虑将此方法与 visible 事件搭配使用,以确保在将焦点设置为 InfoWindow 之前,InfoWindow 可见。不可见的 InfoWindow 无法聚焦。 |
getContent |
getContent() 参数:无
|
getPosition |
getPosition() 参数:无
返回值:
LatLng|null|undefined 此 InfoWindow 的 LatLng 位置。 |
getZIndex |
getZIndex() 参数:无
返回值:
number 此 InfoWindow 的 zIndex。 |
open |
open([options, anchor]) 参数:
返回值:None
在给定地图上打开此 InfoWindow。您可以选择将 InfoWindow 与锚点相关联。在核心 API 中,唯一的锚点是 Marker 类。不过,锚点可以是任何公开 LatLng position 属性和(可选)Point anchorPoint 属性以计算 pixelOffset 的 MVCObject(请参阅 InfoWindowOptions)。anchorPoint 是从锚点位置到 InfoWindow 尖端的偏移量。建议将 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 要分配给 InfoWindow 的 AriaLabel。 |
content optional |
要在 InfoWindow 中显示的内容。这可以是 HTML 元素、纯文本字符串或包含 HTML 的字符串。InfoWindow 的大小将根据内容而定。要设置内容的具体大小,请将内容设置为相应大小的 HTML 元素。 |
disableAutoPan optional |
类型:
boolean optional 默认值:
false 停用平移地图,以便在 InfoWindow 打开时使其完全可见。 |
headerContent optional |
要在 InfoWindow 标题行中显示的内容。这可以是 HTML 元素,也可以是包含 HTML 的字符串。InfoWindow 的大小将根据内容而定。如需为标题内容设置显式大小,请将 headerContent 设置为具有该大小的 HTML 元素。 |
headerDisabled optional |
类型:
boolean optional 停用 InfoWindow 中的整个标题行。设置为 true 后,系统会移除标题,以隐藏标题内容和关闭按钮。 |
maxWidth optional |
类型:
number optional InfoWindow 的最大宽度,不考虑内容的宽度。只有在调用 open() 之前设置此值时,系统才会考虑此值。如需在更改内容时更改最大宽度,请依次调用 close() 、setOptions() 和 open() 。 |
minWidth optional |
类型:
number optional InfoWindow 的宽度下限,不考虑内容的宽度。使用此属性时,强烈建议将 minWidth 设置为小于地图宽度(以像素为单位)的值。只有在调用 open() 之前设置此值时,系统才会考虑此值。如需在更改内容时更改最小宽度,请依次调用 close() 、setOptions() 和 open() 。 |
pixelOffset optional |
类型:
Size optional 信息窗口尖端相对于地图上信息窗口锚定地理坐标的点的偏移量(以像素为单位)。如果使用锚点打开 InfoWindow,系统会根据锚点的 anchorPoint 属性计算 pixelOffset 。 |
position optional |
类型:
LatLng|LatLngLiteral optional 用于显示此信息窗口的 LatLng。如果 InfoWindow 是使用锚点打开的,则系统会改用锚点的位置。 |
zIndex optional |
类型:
number optional 所有 InfoWindow 都会按照 zIndex 的顺序显示在地图上,值越高,显示位置就越靠前。默认情况下,InfoWindow 会按其纬度显示,纬度较低的 InfoWindow 会显示在纬度较高的 InfoWindow 前面。信息窗口始终在标记前面显示。 |
InfoWindowOpenOptions 接口
google.maps.InfoWindowOpenOptions
接口
用于打开 InfoWindow 的选项
属性 | |
---|---|
anchor optional |
类型:
MVCObject|AdvancedMarkerElement optional 此 InfoWindow 将定位到的锚点。如果锚点不为 null,InfoWindow 将位于锚点的顶部中心。信息窗口将在与锚点相同的地图或全景图片上呈现(如果有)。 |
map optional |
类型:
Map|StreetViewPanorama optional 用于渲染此 InfoWindow 的地图或全景图片。 |
shouldFocus optional |
类型:
boolean optional 确定是否应在 InfoWindow 打开后将焦点移至其中。如果此属性未设置或设置为 null 或 undefined ,系统会使用启发词语来确定是否应移动焦点。建议您根据自己的需求明确设置此属性,因为启发词语可能会发生变化,并且可能不适用于所有用例。 |