关于Jquery的parent和parents
parent是指取得一个包含着所有匹配元素的唯一父元素的元素集合。
parents则是取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素)。可以通过一个可选的表达式进行筛选。
可以看出parent取的很明确,就是当前元素的父元素;parents则是当前元素的祖先元素。下面列出例子说明:
<html" title=class>class="tags" href="/tags/DIV.html" title=div>div id='html" title=class>class="tags" href="/tags/DIV.html" title=div>div1'>
<html" title=class>class="tags" href="/tags/DIV.html" title=div>div id='html" title=class>class="tags" href="/tags/DIV.html" title=div>div2'><p></p></html" title=class>class="tags" href="/tags/DIV.html" title=div>div>
<html" title=class>class="tags" href="/tags/DIV.html" title=div>div id='html" title=class>class="tags" href="/tags/DIV.html" title=div>div3' html" title=class>class='a'><p></p></html" title=class>class="tags" href="/tags/DIV.html" title=div>div>
<html" title=class>class="tags" href="/tags/DIV.html" title=div>div id='html" title=class>class="tags" href="/tags/DIV.html" title=div>div4'><p></p></html" title=class>class="tags" href="/tags/DIV.html" title=div>div>
</html" title=class>class="tags" href="/tags/DIV.html" title=div>div>
$('p').parent()取到的是html" title=class>class="tags" href="/tags/DIV.html" title=div>div2,html" title=class>class="tags" href="/tags/DIV.html" title=div>div3,html" title=class>class="tags" href="/tags/DIV.html" title=div>div4
$('p').parent('.a')取到的是html" title=class>class="tags" href="/tags/DIV.html" title=div>div3
$('p').parent().parent()取到的是html" title=class>class="tags" href="/tags/DIV.html" title=div>div1,这点比较奇特;不过Jquery对象本身的特点决定了这是可行的。
$('p').parents()取到的是html" title=class>class="tags" href="/tags/DIV.html" title=div>div1,html" title=class>class="tags" href="/tags/DIV.html" title=div>div2,html" title=class>class="tags" href="/tags/DIV.html" title=div>div3,html" title=class>class="tags" href="/tags/DIV.html" title=div>div4
$('p').parents('.a')取到的是html" title=class>class="tags" href="/tags/DIV.html" title=div>div3
Jquery的选择器真是很强大,我觉得Jquery用起来最舒服的就是它的选择器和筛选功能。
<html" title=class>class="tags" href="/tags/DIV.html" title=div>div html" title=class>class="dp-highlighter"> html" title=class>class="tags" href="/tags/DIV.html" title=div>div>
html" title=class>class="language-html"><html> <head></head> <body> <html" title=class>class="tags" href="/tags/DIV.html" title=div>div id="d1"> <p>Hello <html" title=class>class="tags" href="/tags/DIV.html" title=div>div id="crd">xxxxx</html" title=class>class="tags" href="/tags/DIV.html" title=div>div> </p> </html" title=class>class="tags" href="/tags/DIV.html" title=div>div> <html" title=class>class="tags" href="/tags/DIV.html" title=div>div html" title=class>class="selected"> <p>Hello Again</p> </html" title=class>class="tags" href="/tags/DIV.html" title=div>div> </body> </html> parent([expr]) 说明: expr (String) : (可选)用来筛选的表达式 取得一个包含着所有匹配元素的唯一父元素的元素集合。 例: <html" title=class>class="tags" href="/tags/DIV.html" title=div>div html" title=class>class="dp-highlighter"> <html" title=class>class="tags" href="/tags/DIV.html" title=div>div html" title=class>class="bar"> <html" title=class>class="tags" href="/tags/DIV.html" title=div>div html" title=class>class="tools"> Js代码 html" title=class>class="tags" href="/tags/DIV.html" title=div>div> html" title=class>class="tags" href="/tags/DIV.html" title=div>div> html" title=class>class="tags" href="/tags/DIV.html" title=div>div>
html" title=class>class="js" style="display: none;">html" title=class>class="language-html">$("p").parent()
结果:
<html" title=class>class="tags" href="/tags/DIV.html" title=div>div html" title=class>class="dp-highlighter"> <html" title=class>class="tags" href="/tags/DIV.html" title=div>div html" title=class>class="bar"> <html" title=class>class="tags" href="/tags/DIV.html" title=div>div html" title=class>class="tools"> Html代码 html" title=class>class="tags" href="/tags/DIV.html" title=div>div> html" title=class>class="tags" href="/tags/DIV.html" title=div>div> html" title=class>class="tags" href="/tags/DIV.html" title=div>div>html" title=class>class="language-html"><html" title=class>class="tags" href="/tags/DIV.html" title=div>div id="d1"></html" title=class>class="tags" href="/tags/DIV.html" title=div>div><html" title=class>class="tags" href="/tags/DIV.html" title=div>div html" title=class>class="selected"></html" title=class>class="tags" href="/tags/DIV.html" title=div>div>
([expr])
说明:
取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素)。可以通过一个可选的表达式进行筛选。
主要是对祖先元素的理解。
<html" title=class>class="tags" href="/tags/DIV.html" title=div>div html" title=class>class="dp-highlighter"> <html" title=class>class="tags" href="/tags/DIV.html" title=div>div html" title=class>class="bar"> <html" title=class>class="tags" href="/tags/DIV.html" title=div>div html" title=class>class="tools"> Js代码 html" title=class>class="tags" href="/tags/DIV.html" title=div>div> html" title=class>class="tags" href="/tags/DIV.html" title=div>div> html" title=class>class="tags" href="/tags/DIV.html" title=div>div>
$("p"). ()
结果为:html" title=class>class="tags" href="/tags/DIV.html" title=div>div元素、body元素、html元素、 <html" title=class>class="tags" href="/tags/DIV.html" title=div>div html" title=class>class="selected"></html" title=class>class="tags" href="/tags/DIV.html" title=div>div>元素。