在javascript中获取选择范围的样式

get styles of selection range in javascript

本文关键字:范围 样式 选择 获取 javascript      更新时间:2023-09-26

大家都知道,我们可以通过方法

在javascript中获得文本选择
var range = window.getSelection ();

但是,如何获得这个选择的样式?当我选择加粗文本或斜体,我怎么能知道这一点?

(我只有一个想法:获取此选定文本的位置并获取此位置的html…)

您可以使用document.queryCommandState()的东西像粗体斜体document.queryCommandValue()的东西像字体大小和样式。

你必须为每个方法提供一个标志,让它给你一个真或假的值,它不会只返回当前的样式。如果你想知道所选文本是否加粗你可以输入…

if(document.queryCommandState('Bold')){
  // its bold!
}

列出了各种标识符和方法

http://msdn.microsoft.com/en-us/library/ms533049 (v = vs.85) . aspx

您可以使用document.queryCommandState()(参见dottoro)中的一个来处理没有值的命令,如"Bold"answers"Italic", document.queryCommandValue()(参见dottoro)用于有值的命令,如"FontName"。