我正在寻找一种将 CSS 类应用于 HTML 文档中的任意文本范围的方法。我正在使用 MooTools 和 rangy 库,如果只有一个 TextNode 需要处理,这样的东西就可以工作:
createRange: function(start, end) {
var node = this.textArea.childNodes[0]; // textArea is an HTML <span> element
var range = rangy.createRange();
range.setStart(node, start);
range.setStart(node, end);
return range;
}
这给了我一个范围,然后我可以将 CSS 类应用到;但是,如果我在 TextArea 中有任何 HTML 标记,我现在有多个 TextNode,我需要设置一个范围,从一个开始,到另一个结束。我想如果我可以在 textArea 中获得所有 TextNode 的有序列表,我可以做到这一点,但我不确定如何(或是否)可以获得该列表。