1

HTML ドキュメント内の任意のテキスト範囲に CSS クラスを適用する方法を探しています。私は MooTools と rangy ライブラリを使用していますが、処理する TextNode が 1 つしかない場合は、次のように機能します。

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 内のすべての TextNodes の順序付けられたリストを取得できれば、これを実行できると思いますが、そのリストを取得する方法 (または場合) がわかりません。

4

2 に答える 2

0

Rangy にはCSS クラス アプライヤー モジュールがあります。

于 2012-02-26T12:25:00.733 に答える
0

::select疑似のスタイルを設定しないのはなぜですか?

textarea::selection {
background: #abc;
color: #abc;
}

textarea::-moz-selection {
background: #abc;
color: #abc;
}

textarea::-webkit-selection {
background: #abc;
color: #abc;
}
于 2011-06-23T12:37:43.253 に答える