有谁知道如何在 javascript 中选择 IE8 中的节点(元素)?不使用第三方库是首选。
在 IE9 中你可以这样做:
var sel = window.getSelection();
sel.removeAllRanges();
var range = document.createRange();
range.selectNode(node);
sel.addRange(range);
如何在 IE8 中做到这一点?
有谁知道如何在 javascript 中选择 IE8 中的节点(元素)?不使用第三方库是首选。
在 IE9 中你可以这样做:
var sel = window.getSelection();
sel.removeAllRanges();
var range = document.createRange();
range.selectNode(node);
sel.addRange(range);
如何在 IE8 中做到这一点?
这是我使用的代码,它应该可以全面工作:
var sel, range;
if(window.getSelection && document.createRange) {
range = document.createRange();
range.selectNodeContents(node);
sel = window.getSelection();
sel.removeAllRanges();
sel.addRange(range);
} else if(document.body.createTextRange) {
range = document.body.createTextRange();
range.moveToElementText(node);
range.select();
}
对于较旧的 IE,它是这样的,提供node
的是一个元素:
var range = document.body.createTextRange();
range.moveToElementText(node);
range.select();
有关完整的跨浏览器解决方案,请参阅