执行execCommand后再次选择文本

时间:2017-05-22 20:07:09

标签: javascript jquery selection execcommand

我正在使用jQuery构建文本编辑器。

我有一个内容可编辑的div,当我点击<span id="bold-text">时 我可以改变所选文字的样式:

$('span#bold-text').mousedown(function(e){
    document.execCommand('bold', false, null);
});

执行document.execCommand(或可能是因为点击)后,选择松散焦点。

如何在execCommand之后自动选择相同的文字?

1 个答案:

答案 0 :(得分:0)

您可能需要将最后一个焦点项目存储在jQuery中(不包括范围):

var toFocus;
$("*:not(span#bold-text)").blur(function() {
  toFocus = this;
});

然后重新关注它:

$('span#bold-text').click(function(e){        
  document.execCommand('bold', false, null);    
  if(toFocus){
    $(toFocus).focus(); 
  }        
});