HTMLElement: showPopover()-Methode
Baseline 2024>
Neu verfügbar
Seit April 2024 funktioniert diese Funktion auf aktuellen Geräten und in aktuellen Browserversionen. Auf älteren Geräten oder in älteren Browsern funktioniert sie möglicherweise nicht.
Die showPopover()-Methode des HTMLElement-Interfaces zeigt ein Popover-Element (d.h. eines, das ein gültiges popover-Attribut hat) an, indem es in die oberste Ebene eingefügt wird.
Wenn showPopover() auf ein Element mit dem popover-Attribut aufgerufen wird, das derzeit verborgen ist, wird ein beforetoggle-Event ausgelöst, gefolgt von der Anzeige des Popovers, und dann wird das toggle-Event ausgelöst.
Syntax
showPopover()
showPopover(options)
Parameter
optionsOptional-
Ein Objekt, das die folgenden Eigenschaften enthalten kann:
sourceOptional-
Eine
HTMLElement-Referenz; definiert programmgesteuert den Auslöser des mit der Anzeigeaktion verbundenen Popovers, d.h. dessen Steuerelement. Die Herstellung einer Beziehung zwischen einem Popover und seinem Auslöser mithilfe dersource-Option hat zwei nützliche Effekte:- Der Browser platziert das Popover in einer logischen Position in der Tastatur-Fokus-Navigationsreihenfolge, wenn es angezeigt wird. Dies macht das Popover für Tastaturnutzer besser zugänglich (siehe auch Popover-Zugänglichkeitsfunktionen).
- Der Browser erstellt eine implizite Ankerreferenz zwischen den beiden Elementen, was es sehr bequem macht, Popover relativ zu ihren Steuerelementen mittels CSS-Ankerpositionierung zu positionieren. Siehe Popover-Ankerpositionierung für weitere Details.
Rückgabewert
Keiner (undefined).
Ausnahmen
InvalidStateErrorDOMException-
Wird ausgelöst, wenn diese Methode aufgerufen wird, während ein anderes Popover bereits gerade angezeigt oder verborgen wird (z. B. innerhalb eines
beforetoggle-Event Listeners).
Beispiele
Das folgende Beispiel bietet eine Funktionalität, um ein Popover durch Drücken einer bestimmten Taste auf der Tastatur anzuzeigen.
Zuerst etwas HTML:
<div id="mypopover" popover>
<h2>Help!</h2>
<p>You can use the following commands to control the app</p>
<ul>
<li>Press <ins>C</ins> to order cheese</li>
<li>Press <ins>T</ins> to order tofu</li>
<li>Press <ins>B</ins> to order bacon</li>
</ul>
<hr />
<ul>
<li>Say "Service" to summon the robot waiter to take your order</li>
<li>Say "Escape" to engage the ejector seat</li>
</ul>
</div>
Und nun der JavaScript-Code, um die Funktionalität zu verbinden:
const popover = document.getElementById("mypopover");
document.addEventListener("keydown", (event) => {
if (event.key === "h") {
popover.showPopover();
}
});
Spezifikationen
| Spezifikation |
|---|
| HTML> # dom-showpopover> |