相关疑难解决方法(0)

将Range或DocumentFragment转换为字符串

有没有办法在W3C兼容的浏览器中获取JavaScript范围对象的html字符串?

例如,假设用户选择以下内容:Hello <b>World</b>
可以使用该Range.toString()方法将"Hello World"作为字符串.(在Firefox中,也可以使用文档getSelection方法.)

但我似乎无法找到获取内部HTML的方法.

经过一番搜索,我发现范围可以转换为DocumentFragmentObject.

但是DocumentFragments没有innerHTML属性(至少在Firefox中;没有尝试过Webkit或Opera).
这对我来说似乎很奇怪:显然应该有一些方法来访问所选项目.

我意识到我可以创建一个documentFragment,将文档片段附加到另一个元素,然后获取该innerHTML元素.
但该方法将自动关闭我选择的区域内的任何打开的标签.
除此之外,肯定有一个明显的"更好的方法",而不是将它附加到dom只是为了让它成为一个字符串.

那么,如何获取Range或DocFrag的html字符串?

javascript range tostring selection documentfragment

20
推荐指数
5
解决办法
2万
查看次数