是否可以获取用户在某个区域中选择的所有文本节点?
我尝试使用选择对象(window.getSelection()
)来获取开始文本节点和结束节点的anchorNode
和focusNode
.
现在我试图获取起始文本节点和结束之间的所有文本节点。这个问题还需要关注两个节点之间的子节点和父节点。
最佳答案
是的,您可以使用 document.selection
类 (IE) 或 selectionStart
和 selectionEnd
属性 (Firefox/Chrome)
var $ = function(id) { return document.getElementById(id); };
$('get').onclick = function() {
var text = $('text'),
selection = '';
if (typeof document.selection !== 'undefined')
{
text.focus();
var sel = document.selection.createRange();
selection = sel.text;
}
else
{
var d = text.selectionStart,
e = text.selectionEnd;
for (var i = d; i < e; i++)
{
selection += text.value[i];
}
}
alert ("Selected content:\n" + selection);
};
<强> Working demo
关于javascript - 获取用户在某个区域选择的所有文本节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19116358/