Textarea 2 语言拼写检查

Posted

技术标签:

【中文标题】Textarea 2 语言拼写检查【英文标题】:Textarea 2 languages spell check 【发布时间】:2022-01-02 09:33:48 【问题描述】:

我的目标是拥有一个 html textarea 标签,它可以在 2 种指定语言中进行拼写检查。 lang 属性非常适合 1 种语言的拼写检查,但我找不到任何方法来检查更多语言的拼写。我发现了这个“使用增强的拼写检查”选项,如果我可以为我网站上的每位客人打开它,那就太好了。或者也许还有其他方法可以将第二语言添加到拼写检查中?

谢谢! Enhanced spell check

【问题讨论】:

【参考方案1】:

更新 事实证明,两种语言放在一起可能会令人困惑。例如,拉丁词“fortus”被标记:

所以我不知道这样做是否是个好主意。 You can't even change the default language,更别提两个了。

原答案 我认为你做不到。

拼写检查被浏览器广泛控制,一些基本的浏览器仍然没有。除了打开或关闭它之外,您无法控制所使用的语言或增强拼写检查是否已打开。

你看,Edge 甚至没有增强拼写检查:

您可以改为开发自己的拼写检查。

这是一个基本的例子:

const words = ['one', 'two', 'three'];
$('#enter').on('input', function() 
  document.getElementById('m').innerHTML = '';
  this.value.split(" ").forEach(function(v) 
    if (!words.includes(v)) 
      document.getElementById('m').innerHTML += "<li>" + v + "</li>";
    
  );
);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<label>The dictionary is only trained to recognize "one", "two", and "three". Type anything else and it will get flagged:<br />
<textarea id="enter"></textarea></label>
Misspelled words:<ul id="m"></ul>
但是,需要注意的是,您不能让它看起来适合每个用户。

以下是 Firefox 标记拼写错误的方式:

这里是边缘:

一个比另一个更尖。这并没有太大的区别,但它显示了不同的浏览器有不同的拼写检查器。

【讨论】:

以上是关于Textarea 2 语言拼写检查的主要内容,如果未能解决你的问题,请参考以下文章

我可以在我的表单元素上配置拼写检查属性使用的字典语言吗?

通过 HTML/css 关闭 Chrome/Safari 拼写检查 [重复]

自然语言处理-拼写检查

代码分析是不是支持为混合语言拼写检查定义两种语言?

Eclipse 拼写检查平台字典

IDEA插件系列(60):Grazie插件——智能拼写和语法检查