compositionend

L'événement compositionend est déclenché lorsque la composition d'un texte via méthode de saisie est terminée ou annulée (démarre avec des caractères spéciaux qui requièrent une séquence de touches et d'autres entrées telles que la reconnaissance vocale ou la suggestion de mot sur mobile).

Par exemple, cette événement pourrait être déclanché quand un utilisateur saisie un caractère chinois en utilisant la méthode de saisie Pinyin.

Se propage/remonte dans le DOM Oui
Annulable Oui
Interface CompositionEvent
Propriété pour la gestion d'évènement Aucune

Exemple

Html

html
<div class="control">
  <label for="name"
    >Sur macOS, cliquez sur la boîte de texte,<br />
    puis appuyez sur <kbd>option</kbd> + <kbd>`</kbd>, puis <kbd>a</kbd>:</label
  >
  <input type="text" id="example" name="example" />
</div>

<div class="event-log">
  <label>Log d'événement:</label>
  <textarea readonly class="event-log-contents" rows="8" cols="25"></textarea>
  <button class="clear-log">Effacer</button>
</div>

JS

js
const inputElement = document.querySelector('input[type="text"]');
const log = document.querySelector(".event-log-contents");
const clearLog = document.querySelector(".clear-log");

clearLog.addEventListener("click", () => {
  log.textContent = "";
});

function handleEvent(event) {
  log.textContent = log.textContent + `${event.type}: ${event.data}\n`;
}

inputElement.addEventListener("compositionstart", handleEvent);
inputElement.addEventListener("compositionupdate", handleEvent);
inputElement.addEventListener("compositionend", handleEvent);

Resultat

Spécifications

Specification
UI Events
# event-type-compositionend

Compatibilité des navigateurs

BCD tables only load in the browser

Evénements liés