0

getselection();テキストをjqueryのセレクターとして使用するにはどうすればよいですか。

このようなものもありますが、これはうまくいきません:

var sel = window.getselection();
$(sel).wrap('<div class=\"onetwothree\"></div>');
4

1 に答える 1

0

.wrap は、選択したアイテムを jQuery で何かでラップすることを目的としています。sel はテキストの選択であり、有効な jQuery セレクターではないため、次のように実行できます。

まず、ユーザーが取得したテキストの選択を見つけます。次に、そのテキストのコンテナーを見つけて、その html を取得します。その後、split 関数を使用して文字列を 2 インデックスの配列に分割できます。分割文字列を選択する必要があります。次に、選択範囲の左側にあるものと右側にあるものを取得します。

これで、例として、その配列をラップしたくないものと組み合わせることができます。

var splittedContent = ['leftside', 'rightside'];

var newStr = splittedContent[0]+'<div class="somediv">'+yourSelection+'</div>'+splittedContent[1];

$('.container').html(newStr);

これは、左側にあるものを取得し、それを選択範囲を囲む div と組み合わせてから、選択範囲の右側を最後にドロップします。その後、html を取得した要素に html を設定し直します。

これがあなたに継続へのリードを与えたことを願っています:)

于 2012-02-25T15:10:16.850 に答える