首页 文章

如何在不禁用IE11拼写检查的情况下在textarea中禁用自动更正?

提问于
浏览
1

似乎如果我将拼写检查属性标记为false,它会修复自动纠正问题但是它不会强调错误拼写的单词 .

<textarea id="TextArea1"  spellcheck="false"></textarea>

我不想禁用拼写检查,但我不喜欢它的自动更正功能 . 如何创建自定义拼写检查属性?

2 回答

  • 1

    当HTML不够时,您可以尝试使用JavaScript .

    以下代码可防止任何自动更正(专为IE-11构建):

    var t = document.querySelector('#t');
    var prev = '', len = 0;
    
    t.addEventListener('keyup', function(e) {
      len = t.value.length;
      if(e.keyCode === 32) {
        t.value = prev + ' ';
      }
    
      prev = t.value;
      console.log(prev);
    });
    
    var t = document.querySelector('#t');
    var prev = '', len = 0;
    
    t.addEventListener('keyup', function(e) {
      len = t.value.length;
      if(e.keyCode === 32)
        t.value = prev + ' ';
    
      prev = t.value;
    });
    
    <textarea id='t' spellcheck='true' autocomplete='off'></textarea>
    

    参考:Element.addEventListener()String charAt()

  • 1

    注意:当最初询问问题时,它没有指定IE11 . 这个解决方案显然不适用于IE11 .

    请尝试以下方法:

    <textarea autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="true"></textarea>
    

    请记住, autocorrectautocapitalize 不是标准属性,并不是所有浏览器都支持 .

    更多信息:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/textarea#Attributes

相关问题