web-dev-qa-db-ja.com

Selection.addRange()は廃止され、Chromeから削除されます

aloha editor を使用しているときに、最近、Chromeのコンソールログに次のメッセージが表示されました。

aloha.js:14579-Selection.addRange()が既存の範囲と指定された範囲をマージする動作は非推奨になり、2017年4月頃にM58で削除されます。参照 https://www.chromestatus.com/features/6680566019653632 詳細。

代わりのものを見つけようとしているときに、それを削除する以外に何も見つからなかったので、このメッセージを取り除くためのSelection.addRange()の代替手段を知りたいのですが。

13
Inc33

コツは、removeAllRanges()を使用して新しい範囲を追加する前に、選択範囲でaddRange(range)を使用することです。これを使用してelemのすべてのコンテンツを選択する場合の例を次に示します。

selection = window.getSelection();    // Save the selection.
range = document.createRange();
range.selectNodeContents(elem);
selection.removeAllRanges();          // Remove all ranges from the selection.
selection.addRange(range);            // Add the new range.
22
Raymundus