使用jquery选择器如何获取父级元素、同级元素、子元素

 更新时间:2014年05月14日 17:08:02   作者:  
这篇文章主要介绍了使用jquery选择器如何获取父级元素、同级元素、子元素,需要的朋友可以参考下
一、获取父级元素

1、 parent([expr]):

获取指定元素的所有父级元素
复制代码 代码如下:

<div id="par_div"><a id="href_fir" href="#">href_fir</a>
<a id="href_sec" href="#">href_sec</a>
<a id="href_thr" href="#">href_thr</a></div>
<span id="par_span">
<a id="href_fiv" href="#">href_fiv</a>
</span>
$(document).ready(function(){
$("a").parent().addClass('a_par');
});

firebug查看jquery parent效果

二、获取同级元素:

1、next([expr]):
获取指定元素的下一个同级元素(注意是下一个同级元素哦)
复制代码 代码如下:

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
</head>

<body>
<ul>
<li>list item 1</li>
<li>list item 2</li>
<li class="third-item">list item 3</li>
<li>list item 4</li>
<li>list item 5</li>
</ul>

<script>
$('li.third-item').next().css('background-color', 'red');
</script>

</body>
</html>

这个例子的结果是,只有list item 4背景色变为红色

2、nextAll([expr]):

获取指定元素后边的所有同级元素
复制代码 代码如下:

<div><span>And Again</span></div>
var p_nex = $("p").nextAll();
p_nex.addClass('p_next_all');

注意看最后一个”<p>”标签哦,也被加上了'p_next_all'这个类名哦~~

3、andSelf():

获取指定元素后边的所有同级元素,之后加上指定的元素

我感觉这个函数是最有意思的一个函数了,什么意思?直译过来就是”还有我“,”还有自己”,没错,还有自己。
复制代码 代码如下:

<p>Hello</p><p>Hello Again</p><div><span>And Again</span></div>
var p_nex = $("p").nextAll().andSelf();
p_nex.addClass('p_next_all');

注意看第一个“<p>”标签啊,这句话的意思是选择p标签后面的所有同级标签,以及自己。。。

以下这两个不举具体的例子了,实际上就是next()和nextAll()的相反喽

4、prev():获取指定元素的上一个同级元素(是上一个哦)。

5、prevAll():获取指定元素的前边所有的同级元素。

三、获取子元素

1、查找子元素方式1:>

例如:var aNods = $("ul > a");查找ul下的所有a标签

2、查找子元素方式2:children()

3、查找子元素方式3:find()

这里再简单介绍以下children()和find()的异同:

1> children及find方法都用是用来获得element的子elements的,两者都不会返回 text node,就像大多数的jQuery方法一样。
2> children方法获得的仅仅是元素一下级的子元素,即:immediate children。
3> find方法获得所有下级元素,即:descendants of these elements in the DOM tree
4> children方法的参数selector 是可选的(optionally),用来过滤子元素,

但find方法的参数selector方法是必选的。

5> find方法事实上可以通过使用 jQuery( selector, context )来实现。即$('li.item-ii').find('li')等同于$('li', 'li.item-ii').

例:
复制代码 代码如下:

<ul class="level-1">
<li class="item-i">I</li>
<li class="item-ii">II
<ul class="level-2">
<li class="item-a">A</li>
<li class="item-b">B
<ul class="level-3">
<li class="item-1">1</li>
<li class="item-2">2</li>
<li class="item-3">3</li>
</ul>
</li>
<li class="item-c">C</li>
</ul>
</li>
<li class="item-iii">III</li>
</ul>

使用:$('ul.level-2').children().css('border', '1px solid green'); 的效果是:

使用 $('ul.level-2').find('li').css('border', '1px solid green'); 的效果是:

相关文章

  • jQuery对象的length属性用法实例

    jQuery对象的length属性用法实例

    这篇文章主要介绍了jQuery对象的length属性用法,实例分析了length属性获取集合中对象数目的使用技巧,具有一定的参考借鉴价值,需要的朋友可以参考下
    2014-12-12
  • jQuery数据显示插件整合实现代码

    jQuery数据显示插件整合实现代码

    由于我们公司的产品涉及到很多的表格数据显示,而且每张表的字段数都很多,在工作过程中(几任同仁的努力),整合出一套自认为较为轻巧的方案
    2011-10-10
  • 从零开始学习jQuery (一) 开天辟地入门篇

    从零开始学习jQuery (一) 开天辟地入门篇

    本篇文章是入门第一篇, 主要是简单介绍jQuery, 通过简单示例指导大家如何编写jQuery代码以及搭建开发环境. 详细讲解了如何在Visual Studio中配合使用jQuery.
    2010-10-10
  • jQuery实现IE输入框完成placeholder标签功能的方法

    jQuery实现IE输入框完成placeholder标签功能的方法

    这篇文章主要介绍了jQuery实现IE输入框完成placeholder标签功能的方法,涉及jQuery事件响应及针对页面元素属性的动态操作相关实现技巧,需要的朋友可以参考下
    2017-09-09
  • jQuery Position方法使用和兼容性

    jQuery Position方法使用和兼容性

    position方法获取匹配元素相对父元素的偏移。接下来通过本文给大家分享jQuery Position方法使用和兼容性的相关知识,感兴趣的朋友一起看看吧
    2017-08-08
  • jqGrid用法汇总(全经典)

    jqGrid用法汇总(全经典)

     jqGrid可以绑定XML,JSON和数组三种类型的数据。接下来通过本文给大家介绍jqGrid用法的相关知识,感兴趣的朋友一起学习吧
    2016-06-06
  • jquery自定义表单验证插件

    jquery自定义表单验证插件

    这篇文章主要为大家详细介绍了jquery自定义表单验证插件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-10-10
  • asp.net网站开发中用jquery实现滚动浏览器滚动条加载数据(类似于腾讯微博)

    asp.net网站开发中用jquery实现滚动浏览器滚动条加载数据(类似于腾讯微博)

    腾讯微博提供两种加载数据的方式,一种是分页,一种是滚动浏览器滚动条加载数据,分页功能我想大家都做得太多了,今天我与大家分享一下我用滚动条滚动加载数据
    2012-03-03
  • 自己动手开发jQuery插件教程

    自己动手开发jQuery插件教程

    首先要了解jQuery插件开发分两种,1.类级别的插件开发。2.对象级别插件开发。什么? 你居然问什么是类级别和什么是对象级别?
    2011-08-08
  • jQuery弹出(alert)select选择的值

    jQuery弹出(alert)select选择的值

    利用jQuery弹出select选择的值,当单击按钮的时候就会执行的一个方法,它的作用就是alert select值
    2013-04-04

最新评论