是否可以通过JavaScript在textarea中禁用拼写检查?
我一直在关注HTML5 'spellcheck' attribute,我可以让它独立工作。但是,我希望能够通过JavaScript更改此属性。
在阅读上面链接提供的文档后,我将以下几行代码放在一起(来自更大文件的片段;我知道它们不会自行运行):
document.querySelector("#editor").spellcheck = "false";
和
document.querySelector("#editor").spellcheck = "true";
但它似乎不起作用。我犯了错误或误解了文档吗? (无用,Google Chrome中的JavaScript控制台没有返回错误。)或者还有其他方法可以执行此操作吗?
答案 0 :(得分:20)
您将其设置为字符串 "true"
(true
值)和字符串 "false"
(这也是true
值。
使用布尔,而不是字符串。摆脱引号。
答案 1 :(得分:2)
至少对我来说,字符串/布尔值的区别不会影响JavaScript-Javascript解释中的HTML属性"false" == false
。
您可能遇到拼写检查没有被取消的问题,因为您没有强迫它重新评估textarea。要强制执行此操作,请尝试以下代码:
var editor = document.getElementById("editor");
editor.spellcheck = false;
editor.focus();
editor.blur();
焦点强制浏览器重新评估textarea,在这种情况下没有拼写检查。希望有所帮助!
答案 2 :(得分:0)
假设它是一个基本属性。
以下应该没有库:
document.getElementById('editor').setAttribute('spellcheck', 'true'); // or false
和jquery:
$('#editor').attr('spellcheck', 'true'); // or false