Für normale Eingabeelemente können Sie die Rechtschreibprüfung über ein HTML-Attribut abschalten (zumindest unter FF). Das Gleiche spellcheck="false"
scheint bei einem contentEditable-Element nicht zu funktionieren. Gibt es eine andere Lösung für contentEditable-Elemente?
Rechtschreibprüfung=false bei contentEditable-Elementen
Medihack
Ich bin mir nicht sicher, ob Sie darauf hinauswollen, aber ich hatte ein ähnliches Problem mit dem Entfernen der Unterstreichung der Rechtschreibprüfung aus contentEditable-Elementen. Das Problem ist, wenn Sie die einstellen spellcheck
-Attribut auf false setzen, werden alle Wörter, die wegen Rechtschreibfehlern unterstrichen wurden, so lange unterstrichen, bis Sie sich auf das contentEditable-Element konzentrieren.
Der folgende Hack sollte es tun:
element.spellcheck = false;
element.focus();
element.blur();
Ich hoffe, das hilft!
In Gecko alle contenteditable
Elemente prüfen die Rechtschreibung anhand der spellcheck
Attribut/Eigenschaft auf dem <body>
Element.
-
Es scheint bei mir in einer sauberen (nur Firebug) Installation von FF4 nicht zu funktionieren. Zumindest wenn ich es über Firebug eingestellt habe.
– Medihack
8. April 2011 um 23:16 Uhr
-
data:text/html,<div contenteditable>Fe Fi Fo Fum
wird mir als falsch geschrieben angezeigt.data:text/html,<body spellcheck=false><div contenteditable>Fe Fi Fo Fum
nicht.– Neil
9. April 2011 um 16:09 Uhr
Adam Pascoe
Basierend auf dem, was Neil gesagt hat, bin ich auf diesen Typen gekommen:
$('body').attr("spellcheck",false)
Alle meine contenteditable divs wurden standardmäßig so eingestellt, dass sie keine Rechtschreibprüfung verwenden. Ich plane die Verwendung von .blur und .focus, um die Rechtschreibprüfung für einzelne divs nach Bedarf zu aktivieren.
-
Keine Notwendigkeit für jQuery für etwas so Einfaches:
document.body.setAttribute('spellcheck', false);
– Stephen Jenkin
8. Januar 2014 um 16:41 Uhr
Selbst wenn Sie Browserfehler außer Acht lassen, können Sie die Rechtschreibprüfung nicht deaktivieren. Sie können dem Benutzeragenten lediglich suggerieren, dass er keine Rechtschreibprüfung durchführt. Schaut man sich die an Abschnitt der Spezifikation wo es den Algorithmus beschreibt, um zu bestimmen, was auf Rechtschreibung geprüft werden kann, sind hier die ersten beiden Schritte:
- Wenn der Benutzer die Überprüfung für diesen Text deaktiviert hat, wird die Überprüfung deaktiviert.
- Andernfalls, wenn der Benutzer die Überprüfung für diesen Text erzwungen hat, um immer aktiviert zu sein, dann wird die Überprüfung aktiviert.
Benutzereinstellungen setzen die Attribute immer außer Kraft.
Wie in Adam Pascoes Antwort erwähnt, scheint das Deaktivieren der Rechtschreibprüfung für das gesamte Dokument zu funktionieren (2022+), auch wenn es etwas … drastisch ist.
<body spellcheck="false">
– ölna
vor 13 Stunden