2017-04-06 56 views
8
被删除

我注意到最近在Chrome的控制台日志下面的消息,同时采用aloha editorSelection.addRange()已被废弃,则会从Chrome

aloha.js:14579 - 的行为Selection.addRange( )合并现有范围,指定范围已弃用,并将于2017年4月左右在M58中删除。有关更多详细信息,请参阅https://www.chromestatus.com/features/6680566019653632

虽然试图找到一个替代,我找不到另外,他们会删除任何东西,所以我想知道什么是Selection.addRange的替代品()摆脱这个消息的。

回答

11

诀窍是在使用addRange(range)添加新范围之前,使用removeAllRanges()进行选择。以下是使用它来选择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.