Dokument: queryCommandState()-Methode
Deprecated
Avoid using this feature in new projects.
The execCommand() method is "not implemented consistently or fully by user agents, and it is not expected that this will change in the foreseeable future."
This feature may be a candidate for removal from web standards or browsers.>
Consider using the following features instead: Async clipboard oder contenteditable.>
Nicht standardisiert: Diese Funktion ist nicht standardisiert. Wir raten davon ab, nicht-standardisierte Funktionen auf produktiven Webseiten zu verwenden, da sie nur von bestimmten Browsern unterstützt werden und sich in Zukunft ändern oder entfernt werden können. Unter Umständen kann sie jedoch eine geeignete Option sein, wenn es keine standardisierte Alternative gibt.
Hinweis:
Obwohl die Methode execCommand() veraltet ist, gibt es immer noch einige gültige Anwendungsfälle, für die es noch keine brauchbaren Alternativen gibt, wie im Artikel zu execCommand() erwähnt. In diesen Fällen kann sich diese Methode als nützlich erweisen, um ein vollständiges Benutzererlebnis zu implementieren, aber testen Sie, um eine plattformübergreifende Browser-Kompatibilität sicherzustellen.
Die queryCommandState()-Methode informiert Sie darüber, ob die aktuelle Auswahl einen bestimmten Document.execCommand()-Befehl angewendet hat.
Syntax
queryCommandState(command)
Parameter
command-
Ein Befehl von
Document.execCommand()
Rückgabewert
queryCommandState() kann einen booleschen Wert oder null zurückgeben, wenn der Status unbekannt ist.
Beispiel
>HTML
<div contenteditable="true">Select a part of this text!</div>
<button>Test the state of the 'bold' command</button>
<hr />
<div id="output"></div>
JavaScript
function makeBold() {
const state = document.queryCommandState("bold");
let message;
switch (state) {
case true:
message = "The bold formatting will be removed from the selected text.";
break;
case false:
message = "The selected text will be displayed in bold.";
break;
default:
message = "The state of the 'bold' command is indeterminable.";
break;
}
document.querySelector("#output").textContent = `Output: ${message}`;
document.execCommand("bold");
}
document.querySelector("button").addEventListener("click", makeBold);
Ergebnis
Spezifikationen
Dieses Merkmal ist Teil keiner aktuellen Spezifikation. Es ist nicht mehr auf dem Weg, ein Standard zu werden. Es gibt einen inoffiziellen W3C execCommand Spezifikationsentwurf.
Browser-Kompatibilität
Siehe auch
HTMLElement.contentEditabledocument.designModedocument.execCommand()- Browser-Fehler im Zusammenhang mit
queryCommandState(): Scribe's "Browser Inconsistencies" Dokumentation