jQuery -> 获取孩子节点

jQuery提供了很多方法来获取一个元素的direct descendant(直接后代)

最简单的方式是使用direct descendant combinator (>)

例如,如果要获取如下html代码中<div id="content">的直接孩子节点中的a元素,就可以直接使用
> 符号

<body>
<div id="content">
<a href="http://www.jquery.com">jQuery</a>
<p>
<a href="http://blog.csdn.net/feelang">jQuery tutorial</a>
</p>
</div>
</body>

使用selector获取

$('content > a');

当然,也可以使用带两个参数的jQuery函数

$('> a', ‘#content');

也可以链式调用jQuery的api

$('#content').children();

这三个方法都是等价的,但是$(‘#content‘).children()$(‘content > a‘)的区别在于前者的查询速度要大于后者。

从表面上看解析selector必然要花费一些时间,但是这种优势并不是绝对的,具体还要取决与浏览器的内部实现。

但是使用在下面这种情况下,使用children()肯定是有优势的。

var anchors = $('#content')

// Getting all direct children of all anchor elements
// can be achieved in three ways

// #1
anchors.children();

// #2
$('> *', anchors);

// #3
anchors.find('> *')

当然,children()函数也接受selector的参数。例如

$('#content').children('p')

更多内容,请参考jQuery -> 获取后代元素的三种方法

jQuery -> 获取孩子节点,布布扣,bubuko.com

时间: 2024-12-27 08:47:16

jQuery -> 获取孩子节点的相关文章

jQuery 获取DOM节点的两种方式

jQuery中包裹后的DOM对象实际上是一个数组,要获得纯粹的DOM对象可以有两种方式: 1.使用数组索引方式访问,例如: var dom = $(dom)[0]; 2.使用函数get()访问,例如: var dom = $(dom).get(0); get()函数中的参数为索引号. 3.示例 var div = document.createElement("DIV"); div.innerText = "TEST IS OK!"; document.body.a

jQuery获取文本节点之 text()/val()/html() 方法区别

在jquery中val,text,html都能取到值,或加一个参数来赋值,那么它们有些什么区别?下面我们来举例说明: 首先,html属性中有两个方法,一个有参,一个无参 1. 无参html():取得第一个匹配元素的html内容.这个函数不能用于XML文档.但可以用于XHTML文档,返回的是一个String 例子: html页面代码:<div><p>Hello</p></div> jquery代码:$("div").html(); 结果:H

jquery获取(设置)节点的属性与属性值

1. attr(属性名)        //获取属性的值(取得第一个匹配元素的属性值.通过这个方法可以方便地从第一个匹配元素中获取一个属性的值.如果元素没有相应属性,则返回 undefined ) 2. attr(属性名, 属性值)   //设置属性的值 (为所有匹配的元素设置一个属性值.) 3. attr(属性名,函数值)     //设置属性的函数值  (为所有匹配的元素设置一个计算的属性值.不提供值,而是提供一个函数,由这个函数计算的值作为属性值.) 4.attr(properties) 

使用jquery获取父元素或父节点的方法

jquery获取父元素方法比较多,比如parent(),parents(),closest()这些都能帮你实现查找父元素或节点,下面我们来一一讲解: <ul class="parent1"> <li><a href="#" id="item1">jquery获取父节点</a></li> <li><a href="#">jquery获取父元素&l

jquery获取父元素或父节点的方法

jquery获取父元素方法比较多,比如parent(),parents(),closest()这些都能帮你实现查找父元素或节点,下面我们来一一讲解: 先举个例子, <ul class="parent1"> <li><a href="#" id="item1">jquery获取父节点</a></li> <li><a href="#">jquery

使用jquery获取父元素或父节点

使用jquery获取父元素或父节点,比较简单,jquery提供了丰富的方法来让我们使用jquery获取父元素或父节点 jquery获取父元素方法比较多,比如parent(),parents(),closest()这些都能帮你实现查找父元素或节点,下面我们来一一讲解: 先举个例子, <ul class="parent1"> <li><a href="#" id="item1">jquery获取父节点</a&

JS和jQuery获取节点的兄弟,父级,子级元素

原文转自http://blog.csdn.net/duanshuyong/article/details/7562423 先说一下JS的获取方法,其要比JQUERY的方法麻烦很多,后面以JQUERY的方法作对比. JS的方法会比JQUERY麻烦很多,主要则是因为FF浏览器,FF浏览器会把你的换行也当最DOM元素. <div id="test"> <div></div> <div></div> </div> 原生的J

jquery 获取 outerHtml 包含当前节点本身的代码

在开发过程中,jQuery.html() 是获取当前节点下的html代码,并不包含当前节点本身的代码,然后我们有时候确需要,找遍jQuery api文档也没有任何方法可以拿到. 看到有的人通过parent().html(),如果当前元素没有兄弟元素还行,如果有那就行不通了.后来实验发现有一个jQuery的一个方法可以解决,而且非常简便,如下: jQuery.prop("outerHTML"); 复制代码代码如下: <div class="test">&l

JQuery 获取节点

JQUERY的父,子,兄弟节点查找方法 jQuery.parent(expr) 找父亲节点,可以传入expr进行过滤,比如$(“span”).parent()或者$(“span”).parent(“.class”) jQuery.parents(expr),类似于jQuery.parents(expr),但是是查找所有祖先元素,不限于父元素 jQuery.children(expr).返回所有子节点,这个方法只会返回直接的孩子节点,不会返回所有的子孙节点 jQuery.contents(),返回