Javascript 在ContentEditable Div中使用Rangy保存/还原所选内容

Javascript 在ContentEditable Div中使用Rangy保存/还原所选内容,javascript,jquery,selection,contenteditable,rangy,Javascript,Jquery,Selection,Contenteditable,Rangy,从我所做的研究来看,Rangy似乎是保存/恢复选择的最佳方式。但是,我无法让它工作。 我包括了core和selectionsaverestore文件。 我有一个按钮,单击时会触发以下命令: savedSel = rangy.saveSelection(); console.log(savedSel); 日志返回: Object doc: HTMLDocument rangeInfos: Array[1] restored: false win: DOMWindow __proto__: Obj

从我所做的研究来看,Rangy似乎是保存/恢复选择的最佳方式。但是,我无法让它工作。
我包括了core和selectionsaverestore文件。 我有一个按钮,单击时会触发以下命令:

savedSel = rangy.saveSelection();
console.log(savedSel);
日志返回:

Object
doc: HTMLDocument
rangeInfos: Array[1]
restored: false
win: DOMWindow
__proto__: Object

但是,我在contenteditable中没有看到任何标记元素,当我尝试恢复时,什么也没有发生。我做错了什么?

您需要导入两个文件才能正常工作:

<script type="text/javascript" src="./rangy-1.2.3/rangy-core.js"></script>
<script type="text/javascript" src="./rangy-1.2.3/rangy-selectionsaverestore.js"></script>


也许您只导入了“rangy core.js”?

您需要导入两个文件才能使其工作:

<script type="text/javascript" src="./rangy-1.2.3/rangy-core.js"></script>
<script type="text/javascript" src="./rangy-1.2.3/rangy-selectionsaverestore.js"></script>


也许您只导入了“rangy core.js”?

试试
savedSel.rangeInfos[0]
。从返回的对象的外观来看,我认为这可能有效。可能地我以前从未使用过兰吉,所以这只是一个猜测。:)嗯,如果我在变量设置之前应用它,它会说它是未定义的。我应该在哪里应用它?浏览器控制台中是否有任何消息?你有一个示例页面吗?当我为它制作一个JSFIDLE时,我解决了我的问题!我正在使用一个命令来激活保存选项。如果我使用一个新的工具,它现在可以工作了!请尝试
savedSel.rangeInfos[0]
。从返回的对象的外观来看,我认为这可能有效。可能地我以前从未使用过兰吉,所以这只是一个猜测。:)嗯,如果我在变量设置之前应用它,它会说它是未定义的。我应该在哪里应用它?浏览器控制台中是否有任何消息?你有一个示例页面吗?当我为它制作一个JSFIDLE时,我解决了我的问题!我正在使用一个命令来激活保存选项。如果我使用一个新的工具,它现在可以工作了!