getselection();
テキストをjqueryのセレクターとして使用するにはどうすればよいですか。
このようなものもありますが、これはうまくいきません:
var sel = window.getselection();
$(sel).wrap('<div class=\"onetwothree\"></div>');
getselection();
テキストをjqueryのセレクターとして使用するにはどうすればよいですか。
このようなものもありますが、これはうまくいきません:
var sel = window.getselection();
$(sel).wrap('<div class=\"onetwothree\"></div>');
.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 を設定し直します。
これがあなたに継続へのリードを与えたことを願っています:)