3

TEXTAREA Domノードのスペルチェック(つまり、spellcheck = true)を希望しますが、TEXTAREAにフォーカスがない場合は常に、スペルチェックを非表示にします(つまり、赤い波線は表示しません)。TEXTAREAがフォーカスを失うたびに、スペルチェック状態がリセットされるかどうかは関係ありません。

私の知る限り、これはINPUTのデフォルトの動作ですが、少なくともChromeではTEXTAREAではありません。

TEXTAREAをspellcheck=false onblurに設定しようとしましたが、それは役に立たないようです。

コンテンツ編集可能なDIVの場合、div.innerHTML = div.innerHTMLを設定する戦略でうまくいくようですが、TextAreasと同等の方法がわかりません。

アップデート:

以下は私のために働くことになった:

            onblur: function(e) {
              e.target.spellcheck = false;
              var old_value = e.target.value;
              e.target.value = "";
              e.target.value = old_value;
              e.target.spellcheck = true;
            }
4

1 に答える 1

3

jQueryを使用している場合は、次のようになります。

$("textarea").on("focus", function() { $(this).attr("spellcheck", "true"); });

jQueryを使用していない場合は、jQueryを使用することをお勧めします

編集:

次のコードは、それに応じて値を切り替えます。

$("textarea").on("focusin", function() { $(this).attr("spellcheck", "true"); });
$("textarea").on("focusout", function() { $(this).attr("spellcheck", "false"); });
于 2012-08-15T21:51:45.640 に答える