【问题标题】:Over-ride Chrome Browser spell check language using JQuery or JavaScript使用 JQuery 或 JavaScript 覆盖 Chrome 浏览器拼写检查语言
【发布时间】:2017-05-06 06:49:27
【问题描述】:

我使用的是最新的 Chrome 浏览器版本 55.0.2883.87 m。

在 HTML 网页上的输入元素上,如何使用 JQuery/JavaScript 动态覆盖 Chrome 浏览器拼写检查器的语言?

比如页面显示为英文(美国),拼写检查设置为英文(美国),请问如何传入de的德语代码,使里面的所有输入元素的文本区域该表单将使用德语而不是英语(美国)语言对输入进行拼写检查?

这是一个示例 HTML 文本区域。

<textarea cols="40" id="id_objective_details" maxlength="1000" name="objective_details" rows="10" class="kmw-disabled keymanweb-font textArea01"></textarea>

【问题讨论】:

  • 您是否尝试将lang 属性设置为元素? &lt;textarea lang="de"&gt;&lt;/textarea&gt;
  • 最小,是的,试过了,但没有效果。还尝试将lang="de"放在表单标签&lt;from ... lang="de"&gt;中,也没有效果。
  • 尝试添加spellcheck 属性
  • 新手,谢谢。尝试过(使用lang="de"),但没有效果。在表单标签中也尝试过同样的方法,同样没有效果。我的想法已经用完了。

标签: javascript jquery html google-chrome spell-checking


【解决方案1】:

tl;dr

您可以使用setAttribute('lang', lang) 更改语言,但Chrome 不使用lang 属性进行拼写检查。 This 是一个无法解决的问题。检查线程以获取更多信息。


Chrome 使用的是用户必须选择的用户词典。 (尝试右键单击文本区域 -> 拼写检查 -> 选择语言)。用户还应该安装字典,否则无法进行拼写检查。

您可以尝试以下脚本并注意更改 lang 属性不会生效,但如上所述手动更改语言会。

function toLang(lang) {
  document.getElementById('id_objective_details').setAttribute('lang', lang);
}
<h3>Here is some random German text</h3>
<p>Hallo Welt, hallo und hallo wieder Welt.</p>

<h3>Here is some random English text</h3>
<p>Hello world, hello and hi again world.</p>
<textarea cols="40" id="id_objective_details" maxlength="1000" name="objective_details" rows="10" class="kmw-disabled keymanweb-font textArea01" spellcheck="true"></textarea>
<br>
<button onclick="toLang('en')">English check</button>
<button onclick="toLang('de')">German check</button>

您也许可以使用一些外部库,例如 JavaScript SpellCheck 或 JQuery SpellCheck 来完成工作。

【讨论】:

  • 感谢您提供字典信息。
猜你喜欢
  • 2018-07-04
  • 1970-01-01
  • 2014-05-28
  • 2010-09-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-04
相关资源
最近更新 更多