如何从范围中删除 window.getSelection()。anchorNode ?
我试过以下......
window.getSelection().getRangeAt(0).detach(window.getSelection().anchorNode);
......因为这个方法记录不清......
window.getSelection().getRangeAt(0).detach.window.getSelection().anchorNode;
答案 0 :(得分:0)
Range
的{{3}}方法仅用于处理完成后的范围。它对范围来自的文件没有影响。
如果要从范围中删除范围的起始容器节点,可以执行
range.setStartAfter(range.startContainer);
答案 1 :(得分:0)
虽然这不能解决手边的问题(我没有提到过),但这似乎从范围中移除了节点......
alert(window.getSelection().anchorNode.parentNode.nodevalue);
for (var k=0;k<window.getSelection().getRangeAt(0).commonAncestorContainer.childNodes.length;k++)
{
if (window.getSelection().getRangeAt(0).commonAncestorContainer.childNodes[k].isSameNode(window.getSelection().anchorNode))
{
window.getSelection().getRangeAt(0).detach(window.getSelection().getRangeAt(0).commonAncestorContainer.childNodes[k]);
break;
}
}
alert(window.getSelection().anchorNode.parentNode.nodeName);