我正在尝试找到根div元素,这就是我在做的方式。
var parentDoc = window;
while (parentDoc !== parentDoc.parent) {
parentDoc = parentDoc.parent;
}
parentDoc = parentDoc.document;
var divContent = parentDoc.getElementsByClassName("content")[0];
它运行正常,但是当我将浏览器屏幕调整得太小时,我会收到错误。
Uncaught TypeError: Cannot read property 'parent' of null
我该如何解决这个问题?或者有没有更好的方法来使用jquery或javascript做我正在做的事情?
由于
答案 0 :(得分:0)
我相信你要找的是window.top
,它引用了层次结构中最顶层的窗口。您可以在here.上找到更多相关信息。此外,this question可能有助于消除对此与window.parent
之间差异的疑虑。
答案 1 :(得分:0)
不清楚你想做什么,但是使用jQuery你可以尝试使用closest函数:
var $content = $(<selector>).closest('.content');
var content = $content[0];
来自jQuery网站:
对于集合中的每个元素,通过测试元素本身并遍历DOM树中的祖先来获取与选择器匹配的第一个元素。
您可以通过检查parentDoc.parent
var:
while (parentDoc !== parentDoc.parent) {
if (parentDoc.parent == null) {
break;
}
parentDoc = parentDoc.parent;
}