HTMLElement:hidePopover() 方法

Baseline 2024
新推出

自 ⁨2024 年 4 月⁩ 起,此功能可在最新的设备和浏览器版本中运行。此功能可能不适用于较旧的设备或浏览器。

hidePopover() 方法是 HTMLElement 接口的一部分,它通过将其从 顶层 移除并应用 display: none 样式来隐藏一个 弹出式内容(即具有有效 popover 属性的元素)。

当在具有 popover 属性的显示中的元素上调用 hidePopover() 时,会先触发 beforetoggle 事件,然后弹出式内容被隐藏,最后触发 toggle 事件。如果元素已经隐藏,则会抛出错误。

语法

js
hidePopover()

参数

无。

返回值

无(undefined)。

异常

InvalidStateError DOMException

如果弹出式内容已隐藏,则会抛出此错误。

示例

隐藏弹出式内容

下面的示例提供了通过按特定键盘按键来隐藏弹出式内容的功能。

HTML

html
<button popovertarget="mypopover">Toggle popover's display</button>
<div id="mypopover" popover="manual">
  You can press <kbd>h</kbd> on your keyboard to close the popover.
</div>

JavaScript

js
const popover = document.getElementById("mypopover");

document.addEventListener("keydown", (event) => {
  if (event.key === "h") {
    popover.hidePopover();
  }
});

结果

规范

规范
HTML
# dom-hidepopover

浏览器兼容性

另见