Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

HTMLButtonElement : propriété command

Limited availability

Cette fonctionnalité n'est pas Compatible car elle ne fonctionne pas dans certains des navigateurs les plus utilisés.

La propriété command de l'interface HTMLButtonElement permet d'obtenir et de définir l'action à effectuer sur un élément contrôlé par ce bouton. Pour que cela ait un effet, commandfor doit être défini.

Elle reflète l'attribut HTML command.

Valeur

Une chaîne de caractères. Voir l'attribut command pour les valeurs valides.

Exemples

Exemple simple

html
<button id="toggleBtn" commandfor="mypopover" command="toggle-popover">
  Afficher la fenêtre contextuelle
</button>

<div popover id="mypopover">
  <button commandfor="mypopover" command="hide-popover">
    Masquer la fenêtre contextuelle
  </button>
</div>
js
const popover = document.getElementById("mypopover");
const toggleBtn = document.getElementById("toggleBtn");

toggleBtn.command = "show-popover";

Utilisation de valeurs personnalisées pour les commandes

Dans cet exemple, trois boutons ont été créés en utilisant des valeurs personnalisées pour command. Chaque bouton cible la même image à l'aide de l'attribut commandfor.

html
<div class="controls">
  <button commandfor="the-image" command="--rotate-left">
    Tourner à gauche
  </button>
  <button commandfor="the-image" command="--reset">Réinitialiser</button>
  <button commandfor="the-image" command="--rotate-right">
    Tourner à droite
  </button>
</div>

<img
  id="the-image"
  src="/shared-assets/images/examples/dino.svg"
  alt="tête de dinosaure tournée de 0 degrés" />

Un écouteur d'événement est attaché à l'image en utilisant l'événement command. Lorsqu'un des boutons est cliqué, l'écouteur exécute du code en fonction de la valeur personnalisée de command assignée au bouton, fait pivoter l'image et met également à jour son texte alt pour indiquer le nouvel angle de l'image.

js
const image = document.getElementById("the-image");

image.addEventListener("command", (event) => {
  let rotate = parseInt(event.target.style.rotate || "0", 10);
  if (event.command === "--reset") {
    rotate = 0;
    event.target.style.rotate = `${rotate}deg`;
  } else if (event.command === "--rotate-left") {
    rotate = rotate === -270 ? 0 : rotate - 90;
    event.target.style.rotate = `${rotate}deg`;
  } else if (event.command === "--rotate-right") {
    rotate = rotate === 270 ? 0 : rotate + 90;
    event.target.style.rotate = `${rotate}deg`;
  }
  event.target.alt = `tête de dinosaure tournée de ${rotate} degrés`;
});

Spécifications

Specification
HTML
# dom-button-command

Compatibilité des navigateurs

Voir aussi