js/jquery如何获取获取父窗口的父窗口的元素

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js/jquery如何获取获取父窗口的父窗口的元素相关的知识,希望对你有一定的参考价值。

js/jquery如何获取获取父窗口的父窗口的元素
哦,那要怎么用呢?

发现答非所问的人还不少啊

取父窗口的元素方法:$(selector, window.parent.document);
那么你取父窗口的父窗口的元素就可以用:$(selector, window.parent.parent.document);

类似的,取其它窗口的方法大同小异
$(selector, window.top.document);
$(selector, window.opener.document);
$(selector, window.top.frames[0].document);

希望对你能有帮助
参考技术A 发现答非所问的人还不少啊

取父窗口的元素方法:$(selector, window.parent.document);
那么你取父窗口的父窗口的元素就可以用:$(selector, window.parent.parent.document);

类似的,取其它窗口的方法大同小异
$(selector, window.top.document);
$(selector, window.opener.document);
$(selector, window.top.frames[0].document);

希望对你能有帮助
参考技术B parent是找当前元素的第一个父节点,parents是找当前元素的所有父节点
先说一下parent和parents的区别
从字面上不难看出
parent是指取得一个包含着所有匹配元素的唯一父元素的元素集合。
parents则是取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素)。可以通过一个可选的表达式进行筛选。
可以看出parent的取值很明确,就是当前元素的父元素;parents则是当前元素的祖先元素。下面列出例子说明:
<div id='div1'>
<div id='div2'><p></p></div>
<div id='div3' class='a'><p></p></div>
<div id='div4'><p></p></div>
</div>
$('p').parent()取到的是div2,div3,div4
$('p').parent('.a')取到的是div3
$('p').parent().parent()取到的是div1,这点比较奇特;不过Jquery对象本身的特点决定了这是可行的。
$('p').parents()取到的是div1,div2,div3,div4
$('p').parents('.a')取到的是div3
parent(exp)用法:取得一个包含着所有匹配元素的唯一父元素的元素集合。
<script src="jquery-1.2.6.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function()
$("#btn1").click(function()
alert($(this).parent().next().html());
);
);
</script>
</head>
<body>
<table>
<tr>
<td><input id="btn1" class="btn" type="button" value="test" /></td>
<td>some text</td>
</tr>
</table>
....
其中:
this.parent()是input前面的td
this.parent().parent()获取的是tr
this.parent().parent().parent()获取的是table
this.parent().next()获取的是td相临的td
例子中:
<div><p>Hello</p><p>Hello</p></div>
$("p").parent() 得到的是:<div><p>Hello</p><p>Hello</p></div>对象,因为p标签的父标签是div.

jquery如何获得父级的父级元素?

参考技术A 你这里有2个p元素。不太合理。

如要获得父级的父级点两次不就可以了么?

parent()两次啊。。首先获得p的父div在获得div的父级外层的div。这样问题很明显啊。
参考技术B parent()是
父元素
就一个,你要选取class=x的元素,就是第一个p元素的父元素的父元素:
$("p:eq(0)").parent().parent().css("background",
"yellow");
或者p元素父元素的父元素类为x的元素:
$("p").parent().parent(".x").css("background",
"yellow");
或者p元素祖先元素(祖先就很多个了)中类为x的元素:
$("p").parents(".x").css("background",
"yellow");

以上是关于js/jquery如何获取获取父窗口的父窗口的元素的主要内容,如果未能解决你的问题,请参考以下文章

jquery如何获得父级的父级元素?

jquery,iframe,如何在父窗口监听,子窗口发生改变时,父窗口获取子窗口的值

jquery如何获取父元素的子元素

js/jquery父元素调用子元素方法失效

jquery怎么获取当前元素的父元素

jquery怎么获取当前元素的父元素