此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

ToggleEvent

Baseline 2023 *
Newly available

Since ⁨November 2023⁩, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

* Some parts of this feature may have varying levels of support.

>

ToggleEvent 接口表示当元素的状态发生改变时通知用户的事件。

它为 HTMLElementbeforetoggletoggle 事件提供事件对象,这两个事件会在弹出框元素在显示与隐藏状态间切换时(分别在切换前与切换后)触发。

Event ToggleEvent

构造函数

ToggleEvent()

创建一个 ToggleEvent 对象。

实例属性

此接口继承其父接口 Event 的属性。

ToggleEvent.newState 只读

一个字符串(取值为 "open""closed"),表示元素转换后的状态。

ToggleEvent.oldState 只读

一个字符串(取值为 "open""closed"),表示元素转换前的状态。

示例

>

基础示例

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

// ...

popover.addEventListener("beforetoggle", (event) => {
  if (event.newState === "open") {
    console.log("弹出窗口正在显示");
  } else {
    console.log("弹出窗口正在隐藏");
  }
});

规范

Specification
HTML>
# toggleevent>

浏览器兼容性

参见