除非用户点击<div>
,否则Chrome的原生拼写检查不会对可信任的<div>
有效,这是有道理的。但是,如果我动态添加一个有意义的<div>
,有没有办法复制用户点击<div>
&gt;这样拼写检查会起作用吗?我尝试使用jQuery:
$('#div-id').click();
和
$('#div-id').trigger('click');
但这些都行不通。有帮助吗? jQuery或JavaScript适用于我。
答案 0 :(得分:2)
正如提到的评论一样,以编程方式将焦点放在元素上将有助于启用拼写检查。但由于焦点现在被改为另一个元素,这可能是不可取的。所以这是一个完整的解决方案(不使用jQuery,但仍然可以使用它):
var oldFocus = document.activeElement;
div.focus();
if (oldFocus) {
oldFocus.focus();
} else {
div.blur();
}
这会在聚焦div之前保存先前聚焦的元素,以便启用拼写检查。然后,焦点返回到旧元素(如果有一个已经有焦点),否则它没有任何焦点。