EditContext: compositionstart Ereignis

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Das compositionstart-Ereignis der EditContext-Schnittstelle wird ausgelöst, wenn die Zusammensetzung mithilfe eines Input Method Editor (IME)-Fensters beginnt.

Syntax

Verwenden Sie den Ereignisnamen in Methoden wie addEventListener() oder setzen Sie eine Ereignishandlereigenschaft.

js
addEventListener("compositionstart", (event) => { })

oncompositionstart = (event) => { }

Beispiele

Verwendung von compositionstart, um den Rahmen der bearbeitbaren Region zu ändern

Im folgenden Beispiel wird der Rahmen der bearbeitbaren Region auf Rot gesetzt, wenn das compositionstart-Ereignis ausgelöst wird, und zurück auf Schwarz, wenn das compositionend-Ereignis ausgelöst wird. Beachten Sie, dass die Rückruffunktionen der Ereignislistener in diesem Beispiel nur aufgerufen werden, wenn ein IME-Fenster oder andere plattformabhängige Bearbeitungsoberflächen zur Textzusammensetzung verwendet werden.

css
#text-editor {
  border: 1px solid black;
}
#text-editor.is-composing {
  border-color: red;
}
html
<div id="text-editor"></div>
js
const editorElement = document.getElementById("text-editor");
const editContext = new EditContext();
editorElement.editContext = editContext;

editContext.addEventListener("compositionstart", (event) => {
  editorElement.classList.add("is-composing");
});

editContext.addEventListener("compositionend", (event) => {
  editorElement.classList.remove("is-composing");
});

Spezifikationen

Specification
EditContext API
# dom-editcontext-oncompositionstart

Browser-Kompatibilität