files/en-us/web/api/toggleevent/index.md
{{APIRef("Popover API")}}
The ToggleEvent interface represents an event that fires when a popover element is toggled between being shown and hidden.
This is the event object for the {{domxref("HTMLElement.beforetoggle_event", "beforetoggle")}} and {{domxref("HTMLElement.toggle_event", "toggle")}} events, which fire on elements as follows:
beforetoggle event fires before popover or {{htmlelement("dialog")}} elements are shown or hidden.toggle event fires after popover, <dialog>, or {{htmlelement("details")}} elements are shown or hidden.{{InheritanceDiagram}}
ToggleEvent object.This interface inherits properties from its parent, {{DOMxRef("Event")}}.
"open" or "closed"), representing the state the element is transitioning to."open" or "closed"), representing the state the element is transitioning from.const popover = document.getElementById("mypopover");
// …
popover.addEventListener("beforetoggle", (event) => {
if (event.newState === "open") {
console.log("Popover is being shown");
} else {
console.log("Popover is being hidden");
}
});
{{Specifications}}
{{Compat}}