我有一个文档,我试图拉出突出显示的文本和随附的HTML内容。使用window.getSelection()一切正常,但是当我需要提取特定的html内容时,事情开始变得棘手。
我正在尝试确定突出显示的文本是否已经越过任何其他html标记的中途,但是我可以找到提取html内容的所有方法似乎也将html标记添加到之前没有的文档中。这是一个问题,因为我需要知道用户对本机文档的选择。有谁知道这个问题的解决方法?
我尝试过使用
var sel = window.getSelection().getRangeAt(0)
sel.cloneContents()
然后从那里继续,但是当我在斜体节点的中途测试时,它总是返回额外的html标签。
我也尝试使用rangy库
var sel = rangy.getSelection()
console.log(sel.toHtml())
但是返回了同样的问题。似乎任何返回documentFragment对象的方法似乎都会对所选文本做出假设,我需要避免这种情况。
有人有什么想法吗?我很难过。谢谢!