TextFormat
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 TextFormat
-Interface repräsentiert spezielle Formatierungen, die auf einen Textbereich in einem bearbeitbaren Textbereich angewendet werden sollen, der mit einer EditContext
-Instanz verbunden ist. Die Textformatierung wird vom Fenster des Input Method Editors (IME) angefordert, mit dem der Benutzer Text erstellt.
Wenn Sie eine der standardmäßigen bearbeitbaren Bereiche des Webs verwenden, wie beispielsweise ein <textarea>
-Element, wird die IME-Zusammensetzung von Browser und Betriebssystem für Sie übernommen. Zum Beispiel, wenn Sie japanisches IME in einem Textbereich auf Windows verwenden, können die folgenden Textformate angewendet werden:
-
Wenn Text mit der Tastatur eingegeben wird, haben die getippten Zeichen eine dünne wellenförmige Unterstreichung:
-
Wenn der Benutzer einen Vorschlag aus der Liste der Kandidaten im IME-Fenster auswählt, wird der Text ersetzt und mit einer dicken, durchgehenden Linie unterstrichen:
Wenn Sie Ihren eigenen benutzerdefinierten bearbeitbaren Bereich erstellen, indem Sie die EditContext API verwenden, müssen Sie die IME-Zusammensetzung selbst verwalten. Sie sollten auf das textformatupdate
-Ereignis hören, das Ihnen die Liste der Textformate gibt, die das IME-Fenster auf den zu erstellenden Text anwenden möchte. Sie sollten dann die Formatierung des im bearbeitbaren Bereich angezeigten Textes entsprechend aktualisieren.
Konstruktor
TextFormat()
Experimentell-
Gibt eine neue
TextFormat
-Instanz zurück.
Instanz-Eigenschaften
TextFormat.rangeStart
Schreibgeschützt Experimentell-
Die Startposition des Textbereichs, der mit dem angegebenen Textformat formatiert werden muss.
TextFormat.rangeEnd
Schreibgeschützt Experimentell-
Die Endposition des Textbereichs, der mit dem angegebenen Textformat formatiert werden muss.
TextFormat.underlineStyle
Schreibgeschützt Experimentell-
Der Stil der Unterstreichung, der auf den zu formatierenden Textbereich angewendet werden muss.
TextFormat.underlineThickness
Schreibgeschützt Experimentell-
Die Dicke der Unterstreichung, die auf den zu formatierenden Textbereich angewendet werden muss.
Beispiele
Verwendung des textformatupdate
-Ereignisses
Im folgenden Beispiel wird das textformatupdate
-Ereignis verwendet, um die verschiedenen Formate zu protokollieren, die das IME-Zusammensetzungsfenster auf Textbereiche im bearbeitbaren Element anwenden möchte. Beachten Sie, dass der Ereignis-Listener-Rückruf in diesem Beispiel nur aufgerufen wird, wenn ein IME-Fenster zur Texteingabe verwendet wird.
<div id="editor"></div>
const editorEl = document.getElementById("editor");
const editContext = new EditContext(editorEl);
editorEl.editContext = editContext;
editContext.addEventListener("textformatupdate", (e) => {
// Get the TextFormat instances.
const formats = e.getTextFormats();
// Iterate over the TextFormat instances.
for (const format of formats) {
console.log(
`Applying a ${format.underlineThickness} ${format.underlineStyle} underline between ${format.rangeStart} and ${format.rangeEnd}.`,
);
}
});
Spezifikationen
Specification |
---|
EditContext API # dom-textformat |