如何从javascript范围对象中获取html选择?

时间:2012-11-11 04:31:54

标签: javascript range getselection

我有一个文档,我试图拉出突出显示的文本和随附的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对象的方法似乎都会对所选文本做出假设,我需要避免这种情况。

有人有什么想法吗?我很难过。谢谢!

0 个答案:

没有答案