如何用JS一行代码来实现获取选择区域的HTML字符串?
可以通过DocumentFragment和Range来获取选择区域的HTML字符串:
var selection = window.getSelection();
var range = selection.getRangeAt(0);
var clonedRange = range.cloneRange();
var fragment = clonedRange.cloneContents();
var div = document.createElement('div');
div.appendChild(fragment);
var htmlString = div.innerHTML;
console.log(htmlString);
代码再简化,越少越好,能用一句话完成最佳
可以使用以下一行代码来实现获取选择区域的HTML字符串:
下面代码有问题
var htmlString = window.getSelection().getRangeAt(0).cloneContents().querySelector('body').innerHTML;
代码错误提示:VM317:1 Uncaught TypeError: Cannot read properties of null (reading 'innerHTML')
at <anonymous>:1:91
抱歉,我之前给出的代码有一些错误。请尝试以下代码:
var htmlString = document.getSelection().getRangeAt(0).cloneContents().innerHTML;
```javascript