5

我一直在调用execCommand文档以使所选文本变为粗体或设置其颜色。但最近我需要execCommand在一定范围内使用,而不是选定的文本。

我可以这样做吗?如果可以,该怎么做?

4

1 回答 1

8

你可以,但它必须是选择。换句话说,请执行以下操作:

  • 存储当前选择
  • 根据新的选择Range
  • 执行execCommand
  • 恢复之前的选择

您可以使用以下内容创建selection范围(非 IE 浏览器):

 var selection = window.getSelection();
 selection.removeAllRanges();
 selection.addRange(range);

使用 IE,您可以直接execCommandTextRange对象上执行,因此整个过程都不​​是必需的。

于 2011-07-02T10:22:42.753 回答