javascript - 如何使文本区域仅在聚焦时进行拼写检查?

标签 javascript html spell-checking

我希望对我的 TEXTAREA Dom 节点进行拼写检查(即 spellcheck=true),但是当 TEXTAREA 未聚焦时拼写检查是不可见的(即没有红色波浪线)。我不关心每当 TEXTAREA 失去焦点时拼写检查状态是否被重置。

据我所知,这是 INPUT 的默认行为,但不是 TEXTAREA,至少在 Chrome 中是这样。

我试过将 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;
            }

最佳答案

如果你使用的是 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"); });

关于javascript - 如何使文本区域仅在聚焦时进行拼写检查?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11977802/

相关文章:

javascript - 使用 Javascript 从字符串中解析 '1/2'

javascript - Angular 平移不区分大小写

javascript - 更新 li 元素的属性 data-id Nestable 不更新

javascript - 在html中打印js文件的动态值

latex - 如何对多种语言/语言变体的 LaTeX 进行拼写检查

javascript - 如何在 Cypress 中使用不同的夹具运行相同的测试?

jQuery Cycle插件z-index float 问题

javascript - 使用 document.getElementsByClassName() 更改多个元素的字体?

java - 从 SpellCheckerService 将单词添加到自定义词典中

html - 可以在管道模式下拼写输出行号而不偏移吗?