テキストを含む単純な contenteditable div があります。onkeyup イベントで、正規表現に基づいて div のコンテンツ全体 (innerHTML) を置き換えたいと考えています。
例えば、
HTML:
some text, more text and $even more text
すべてのテキストを $ (上記の例では $even ) で取得し、span タグでラップする予定の関数:
div.onkeypress = function() {
div.innerHTML.replace(/(some_regexp)/, "<span class='class'>$1</span>");
};
問題は、そのような置換カーソルがdivの先頭にジャンプした後です。昔のままでいてほしい。
変更する前にカーソルの座標を保存し、それらを使用してカーソルを元に戻す必要があると思いますが、どうすればよいですか? :)
範囲オブジェクトを保存しようとしましたが、編集後、どこにも指していないと思います。
ありがとう!