《JQuery 能干点啥~》第7讲 层级选择器_1

CSS 选择器 上节课 讲完了 这节课 将 层级选择器 ,这名字 是我自己起的,如果一会我讲完了大家有别的好名字,可以提下建议

-------------------------------------------- 开讲了-----------------------------------------------

在 HTML 中 经常会出现 嵌套 的结构,如果用白话 来说,就是 一个标签内部 好包含其他标签,以此类推吧~~
那么,如果 我们想的 得到某一个标签下的所有子标签,第一个子标签 等等的,用 CSS 选择器 直接操作可能不是那么容易~
JQ 提供了一些选择器,方便我们的查找~

现在 先说 所有后代元素吧 !!语法为:$("ancestor descendant")  这里,请大家注意,两个单词之间是有一个空格
现在 我来说 这两个单词是什么意思~,首先,这两个都是 选择器,第一个 是父标签的选择器,第二个是子标签的选择器
貌似有点乱,我来举个例子

?
双击复制代码
1
2
3
4
5
6
< table id = "table父" >
          < tr id = "table的子,td的父" >
                < td id = "tr的子1" ></ td >
                < td id = "tr的子2" ></ td >
          </ tr >
  </ table >


通过 id 应该很容易看出 他们的父子关系了把 (id 这里 ,只是为了给大家举例子!又用汉字,有用符号的,是不规范的,不建议大家模仿 )

那么 根据语法 ,我想得到 table中的所有 tr 的写法应该为

?
双击复制代码
1
$( "table tr" )


以前 好像一直没强调过,JQ 获得的对象,一般是一个集合! id 除外~~~~ 这个 希望大家 留心一下,以后会在将另一个 方法 each的时候 看的很明显!~~

接着说 所有后代元素 ! 有人说,这很麻烦啊,我在每个 tr 都加一个 class 属性,然后 用上节课 讲的 CSS 选择器 中的标签选择器 和 class 选择器 都能得出来啊!

这里我只能说 条条大路通罗马!  上吊不一定都吊死在一个歪脖树上呢! 所以 这个具体选择用什么选择器 ,是要根据实际情况来定的
这个 以后我也就不强调了,我只负责讲~至于怎么用,我只建议 不强求~

时间还够~ 再讲一个  层级选择器 中的  一级子元素  
所谓一级子元素   就是 父选择器下的第一层子元素 !语法   $("parent child")  这里 >  是一个 大于号,这个应该不难看出来吧

还是上面的例子 我要得到所有 tr 
写法应该为

?
双击复制代码
1
$( "table>tbody>tr" )

 


有人会很纳闷,为什么 多出来个 tbody !! 看下图!相信大家有点 朦朦胧胧的 明白了
QQ截图20120706123422.png 
看完图,我在说下 一级子元素 和所有 所有后代元素 有什么不同~
举个形象点的例子!
有个 姓张的老头,儿孙满堂的!!
有一天  他好奇,他儿子谁右脸上 有痣 ,好嘞! 他用了一级子元素 选择器,筛选了一下儿子,结果找出张三 李四 王五…………
又有一天 他又好起了, 在他们 张氏家族中 有多少个人 右脸 上有痣 ,结果他用了 所有后代元素  !筛选了一下 所有后代! 结果找出了张三 李四 王五………… ,还有张三儿子,李四姑娘,王五孙子,赵六加丫头…………

是不是 理解了~~
那我就再概括下~~

一级子元素  选择器就是 儿子辈元素~
所有后代元素  选择器 就是 父类元素 标签内所有标签都要参与选择

从上面的说明 应该很容易发现,在选择 子元素的时候 用一级子元素 选择器 效率会高出 所有后代元素 

好了,今天就讲这么多吧~  讲多了容易 混乱
下周一接着讲 层级选择器~

本人的原文出自 http://bbs.coderli.com/forum.php?mod=viewthread&tid=409&fromuid=7

有需要样例代码的 童鞋 可以去下载

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值