--- title: compositionstart slug: Web/Events/compositionstart translation_of: Web/API/Element/compositionstart_event ---

L'événement compositionstart est déclenché lorsque la composition d'un passage de texte est préparée (similaire à keydown pour une entrée clavier, mais démarre avec des caractères spéciaux qui nécessitent une sequence de touches et d'autres entrées telles que la reconnaissance vocale ou la suggestion de mots du mobile).

Informations générales

Interface
{{domxref("TouchEvent")}}
Propagation
Oui
Annulable
Oui
Cible
{{domxref("Element")}}

Propriétés

Property Type Description
target {{ReadOnlyInline}} {{domxref("EventTarget")}} Elément ayant le focus qui traite la composition
type {{ReadOnlyInline}} {{domxref("DOMString")}} Le type de l'événement.
bubbles {{ReadOnlyInline}} boolean Est-ce qu'il se propage?
cancelable {{ReadOnlyInline}} boolean Peut-il être annulé?
view {{ReadOnlyInline}} {{domxref("WindowProxy")}} {{domxref("Document.defaultView")}} (fenêtre du document)
detail {{ReadOnlyInline}} long (float) 0.
data {{ReadOnlyInline}} {{domxref("DOMString")}} (string)

La chaîne de caractères originale éditée ou une chaîne vide.

locale {{ReadOnlyInline}} {{domxref("DOMString")}} (string) Le code de la langue pour l'événement de composition si disponible; Sinon une chaîne vide.

Compatibilités navigateur

{{CompatibilityTable}}

Navigateur Chrome Firefox (Gecko) Internet Explorer Opera Safari
Support basique {{CompatVersionUnknown}}[1] {{CompatGeckoDesktop("9.0")}}[2] {{CompatVersionUnknown}}[3] {{CompatNo}} {{CompatVersionUnknown}}[1]
Navigateur Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Support basique {{CompatUnknown}} {{CompatGeckoMobile("9.0")}}[2] {{CompatUnknown}} {{CompatUnknown}} {{CompatUnknown}}

[1] La valeur de l'attribut data est fausse

[2] L'événement a été déclenché dans les versions de Gecko antérieures à la 9.0, mais n'avait pas les attributs et les méthodes DOM Level 3.

Gecko ne supporte pas l'attribut locale pour les événements approuvés pour l'instant. Cependant, cette valeur peut être définie via initCompositionEvent() à la création d'événements non-approuvés.

Selon la spécification DOM Level3, compositionstart est annulable; Cependant, Gecko ne vous laisse pas l' annuler.

Gecko déclenche l'événement lorsque IME commence la composition, et quelques plateformes n'ont pas d'API pour annuler la composition une fois commencée. De plus, Gecko ne peut pas savoir si un événement clavier va commencé la composition ou non jusqu'à ce que IME ne la commence réellement. A cause de celà, {{domxref("event.preventDefault()")}} ne fonctionne pas sur l'événement compositionstart avec Gecko.

Les éditeurs de Gecko (comme <input type="text"> <div contenteditable/> et designMode) commence la composition après la phase de propagation de compositionstart. Donc, au moment où votre gestionnaire de compositionstart est appelé, aucun contenu n'a été modifié.

[3] La valeur de data est toujours vide.

Evénements liés