HTMLElement : propriété popover
Baseline
2025
*
Newly available
Depuis January 2025, cette fonctionnalité fonctionne sur les appareils et les versions de navigateur les plus récents. Elle peut ne pas fonctionner sur les appareils ou navigateurs plus anciens.
* Certaines parties de cette fonctionnalité peuvent bénéficier de prise en charge variables.
La propriété popover de l'interface HTMLElement récupère et définit l'état d'un élément de fenêtre contextuelle (popover en anglais) via JavaScript ("auto", "hint" ou "manual"), et peut être utilisée pour la détection de fonctionnalités.
Elle reflète la valeur de l'attribut HTML global popover.
Valeur
Une valeur énumérée ; les valeurs possibles sont :
"auto"-
Dans l'état
autodes fenêtres contextuelles, elles peuvent être masquées en cliquant en dehors de la zone ou en appuyant sur la touche Esc (light-dismissed).Habituellement, une seule fenêtre contextuelle peut être affichée à la fois : en afficher une deuxième alors qu'une autre est déjà affichée masquera la première. Les fenêtres contextuelles automatiques imbriquées sont la seule exception à cette règle. Voir la section sur les popovers imbriquées pour plus de détails.
"hint"Expérimental-
Les fenêtres contextuelles
hintn'entraînent pas la fermeture des fenêtres contextuellesautolorsqu'elles sont affichées, mais fermeront les autres fenêtres contextuelles d'indication. Elles peuvent être masquées par fermeture légère et répondront aux demandes de fermeture.Habituellement, elles sont affichées et masquées en réponse à des évènements JavaScript autres que le clic, comme
mouseover/mouseoutetfocus/blur. Cliquer sur un bouton pour ouvrir une fenêtre contextuellehintentraînera la fermeture légère d'une fenêtre contextuelleautoouverte. "manual"-
Dans l'état
manualdes fenêtres contextuelles, elles ne peuvent pas être fermées en cliquant en dehors de la zone ou avec Esc, les boutons déclaratifs d'affichage/masquage/basculement fonctionneront toujours. Plusieurs fenêtres contextuelles indépendantes peuvent être affichées en même temps.
Exemples
>Détection de fonctionnalités
Vous pouvez utiliser l'attribut popover pour détecter la prise en charge de l'API Popover :
function supportsPopover() {
return Object.hasOwn(HTMLElement.prototype, "popover");
}
Configuration d'une fenêtre contextuelle de manière programmatique
const popover = document.getElementById("mypopover");
const toggleBtn = document.getElementById("toggleBtn");
const popoverSupported = supportsPopover();
if (popoverSupported) {
popover.popover = "auto";
toggleBtn.popoverTargetElement = popover;
toggleBtn.popoverTargetAction = "toggle";
} else {
console.log("L'API Popover n'est pas prise en charge.");
}
Spécifications
| Specification |
|---|
| HTML> # dom-popover> |
Compatibilité des navigateurs
Voir aussi
- L'attribut HTML universel
popover - L'API Popover