--- title: compositionend slug: Web/API/Element/compositionend_event translation_of: Web/API/Element/compositionend_event original_slug: Web/Events/compositionend ---
L'événement compositionend
est déclenché lorsque la composition d'un texte via {{glossary("input method editor", "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 | {{domxref("CompositionEvent")}} |
Propriété pour la gestion d'évènement | Aucune |
<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>
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);
{{ EmbedLiveSample('Exemple', '100%', '180px') }}
Spécification | Status |
---|---|
{{SpecName('UI Events', '#event-type-compositionend')}} | {{Spec2('UI Events')}} |
{{Compat("api.Element.compositionend_event")}}