Javascript range.extractContents()有时仅拾取innerHTML,如果只选择一个字符,则仅拾取整个文档片段

Javascript range.extractContents()有时仅拾取innerHTML,如果只选择一个字符,则仅拾取整个文档片段,javascript,jquery,html,Javascript,Jquery,Html,我有一些文本供用户选择,如: <span onmouseup="top.onMouseUpEssence('534','');" name="534">h</span> <span onmouseup="top.onMouseUpEssence('534','');" name="534">e</span> <span onmouseup="top.onMouseUpEssence('534','');" name="534">r<

我有一些文本供用户选择,如:

<span onmouseup="top.onMouseUpEssence('534','');" name="534">h</span>
<span onmouseup="top.onMouseUpEssence('534','');" name="534">e</span>
<span onmouseup="top.onMouseUpEssence('534','');" name="534">r</span>
<span onmouseup="top.onMouseUpEssence('534','');" name="534">e</span>

有人知道为什么吗?谢谢。

因为选择的是文本节点,而不是周围的元素谢谢你的回答,如何保证选择的总是周围的元素而不是文本节点?
var selection = window.getSelection();
var range = selection.getRangeAt(0);
var container = document.createElement("span");
var selectionContents = range.extractContents();
container.appendChild(selectionContents);