我正在使用应该跨浏览器兼容的纯 html 和 javascript 制作可移植文档。我将搜索/荧光笔框和结果页面放在单独的框架中。在 ie、ff 和 chrome(使用 disable-web-security 参数)中一切正常,但在 Opera 中抛出错误。我不知道为什么会这样以及如何解决。
任何帮助表示赞赏。
Opera 引发异常的函数:
function selectElementContents(el) {
if (window.getSelection && document.createRange) {
var sel = window.getSelection();
var range = document.createRange();
range.selectNodeContents(el);
sel.removeAllRanges();
sel.addRange(range);
} else if (document.selection && document.body.createTextRange) {
var textRange = document.body.createTextRange();
textRange.moveToElementText(el);
textRange.select();
}
}
Opera 的错误控制台:
Uncaught exception: DOMException: WRONG_DOCUMENT_ERR
Error thrown at line 56, column 8 in selectElementContents(el) in xy.js:
range.selectNodeContents(el);