jquery利用了CSS选择符的能力,让我们能够在DOM中快捷而轻松的获取元素或元素集合。本章将介绍以下内容:  1、网页中的元素结构;  2、如何通过CSS选择符在页面中查找元素;  3、扩展jquery标准的CSS选择符;  4、让选择页面元素更灵活的DOM遍历方法;一、如何理解DOM?  DOM中的对象网络与家谱十分相似。比如祖先元素父元素子元素等等。  元素之间的关系图从下面的图就可以看清楚:    为了把DOM结构更形象的表现出来,可以使用很多工具,列如FirefoxFirebug插件,SafariChrome中的Web Inspector等。二、如何使用$()函数?  我们通过jquery的各种选择符和方法取得的结果集合会被包装在jquery对象中。通过对象实际的操作这些元素会非常简单,可以轻松地为jquery对象绑定事件、添加漂亮的效果,也可以将多重修改通过jquery对象连缀在一起。  为了创建jquery对象,就要使用$()函数。这个函数接受CSSS选择符作为参数。充当一个工厂,返回包含页面对应元素的jquery对象。  有3种基本的选择符:标签名ID。这些选择符可以单独使用,也可以与其他选择符组合使用。  三、CSS选择符都有哪些?  ① 属性选择符;    属性选择符是CSS选择符中特别有用的一类选择符,顾名思义,属性选择符通过HTML元素的属性选择元素,例如链接的title属性或图像的alt图像。
$('img[alt]')
  ② 自定义选择符;    除了各种CSS选择符外,jquery还添加了独有的完全不同的自定义选择符。    jquery中的多数自定义选择符都可以让我们从已经找到的元素中选出一或多个元素。自定义选择符的语法与CSS中的伪类选择符语法相同,既选择符以冒号(:)开头。    例如,我想从带有horizontal类的<div>集合中选择第二项;
$('div.horizontal:eq(1)')
  ③ 每隔一行为表格添加样式    jquery库中的两个十分有用的自定义选择符是:odd:even;    :odd可以为表格中偶数行改变样式;    :even则相反,为表格中奇数行改变样式;    为什么针对奇数行使用:even选择符呢?很简单,:eq()选择符、:odd:even选择符都使用javaScript内置从0开始的编号方式,因此,第一行的编号为0(偶数),第二行的编号为1(奇数),以此类推;  ④ :nth-child()选择符    :nth-child()是jquery中唯一从1开始计数的选择符;  ⑤ 基于表单的选择符        [ 以上只是对选择符表达式的简答介绍,以后会逐步讨论选择符 ]四、如何DOM遍历?  很多情况下,取得某个元素的父元素或者祖先元素都是基本的操作,而这正是jquery和DOM遍历方法的用武之地。  如果没有筛选函数,就必须显示地遍历每个元素,对他们单独进行测试,但是,有了下面的筛选函数,仍然可以利用jquery的隐式迭代能量,保持代码的简介。
$('a').filter(function(){
    return this.hostname && this.hostname != location.hostname;
}).addClass('external');
  第二行代码可以筛选出符合下面两个条件的<a>元素。   1、必须包含一个带有域名(this.hostname)的href属性。这个测试可以排除mailto级类似链接;   2、链接指向的域名(this.hostname)必须不动于页面当前所在域的名称(location.hostname);   更准确的说,.filter()方法会迭代所有匹配的元素,对每个元素都调用传入的函数并测试函数的返回值,如果函数返回的是false,则从匹配集合中删除相应元素;如果返回的是true,则保留相应元素。  
       

    

Web前端新人笔记之jquery选择符的更多相关文章

  1. Web前端新人笔记之jquery入门

    本章将为大家介绍以下几点内容: 1.jquery的主要特点: 2.建立jquery的编码环境: 3.简单jquery脚本示例: 4.选择jquery而不是纯javaScript的理由: 5.常用的jq ...

  2. Web前端学习笔记之jQuery选择器

    JQuery过滤器 经过一晚上的查找整理,终于整理出一套应该算最全面的JQuery选择过滤器的方法了.所有代码均经过测试.首先HTML代码 HTML Code <html><head ...

  3. Web前端新人笔记之了解Jquery

    与javaScript相比,Jquery更简洁.浏览器的兼容性更强,语法更灵活,对xpath的支持更强大.一个$符就可以遍历文档中各级元素.例:在页面上有一个无序列表,我们需要将所有列表项中的文本内容 ...

  4. Web前端学习笔记之jQuery基础

    0x0 jQuery介绍 jQuery是一个轻量级的.兼容多浏览器的JavaScript库. jQuery使用户能够更方便地处理HTML Document.Events.实现动画效果.方便地进行Aja ...

  5. Web前端新人笔记之文本属性

    前一段时间因工作时间减缓了更新笔记的时间.我也不知道有没有会观看并且能不能帮到一些初学者,这只是我的一些小随笔而已.当然我也希望的的每一篇随笔都可以帮到更多的想要学习前端开发的初学者们,更希望你们也可 ...

  6. Web前端新人笔记之CSS字体

    本章内容是阅读CSS权威指南的一个小积累和随笔.新人必看,老鸟也可查看并指出不足指出以便后人阅读更好地理解.O(∩_∩)O谢谢!!!设置字体属性时样式变的最常见的用途之一:不过,尽管字体选择很重要,但 ...

  7. Web前端新人笔记之height、min-height的区别

     浏览器参照基准:Firefox, Chrome, Safari, Opera, IE: * IE6不支持CSS min-height属性.最小高度的定义:1. 元素拥有默认高度:2. 当内容超出元素 ...

  8. Web前端新人笔记之CSS值和单位

    数字 颜色——命名颜色 在Css2.1中规范定义了17个颜色名.包括html4.0中定义的16个颜色及外加一个橙色: <h1 style="color=aqua">aq ...

  9. Web前端新人笔记之CSS结构和层叠

    上一篇文章介绍了如何利用CSS选择器为元素应用各种丰富的样式,每个合法的文档都会生成一个结构树,了解这一点,就能根据元素的祖先.属性.兄弟等元素穿件选择器选择元素. 本篇文章将讨论3中机制之间的关系: ...

随机推荐

  1. C#-创建自定义双击事件

    .NET Compact Framework 不支持按钮的 Windows 窗体 DoubleClick 事件.但是您可以创建一个从 Button 类派生的控件来实现该事件. 创建自定义双击事件 创建 ...

  2. Codeforces Codeforces Round #319 (Div. 2) C. Vasya and Petya's Game 数学

    C. Vasya and Petya's Game Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/ ...

  3. css3 字体旋转

    <style> #mycon { font-weight: bold; font-size: 150px; transform: rotateX(10deg); -webkit-trans ...

  4. js操作json添加元素和数据的方法

    function addServerUrlToJson() { var json_tem = [{"name":"a","value":1} ...

  5. python爬虫之採集——360联想词W2版本号

    http://blog.csdn.net/recsysml/article/details/30541197,我的这个博文介绍了对应的简单的方法做一个联想词的爬虫,并且还承诺了下面优化: 下一版本号的 ...

  6. iPad 3g版完美实现打电话功能(phoneitipad破解)

    看到这个标题,有的同学可能吐槽,iPad 用来打电话,多雷人啊,人家apple设计的时候没加电话功能是有益这样做的. 只是这次真的有这种需求,一台測试用的iPad 1 3G版的机器,放进去了一张3G电 ...

  7. Xcode文件目录选中变成白色, 解决方案

    新版Xcode很不稳定, 有时候被选中文件变成白色, 看着很不舒服, 以前都是毫无办法, 等它自动变回来, 现在有一个解决办法, 点击文件目录上面的选项, 随便切换一个再切换回来, 发现文件目录颜色回 ...

  8. Linux学习之路:shell变量(一)

    一.变量的显示与设置 1.变量的显示运用echo命令 +$符号: 上图例子显示的是系统变量,咱们可以自己设置变量 2.设置变量运用“=”符号 设置了变量NIU 值为“niunai” 变量设置规则: ( ...

  9. ubuntu 安装sublime并激活

    1:add-apt-repository ppa:webupd8team/sublime-text-3加载sublime的源2:sudo apt-get update更新源 3:sudo apt-ge ...

  10. 2013 ACM/ICPC 长沙现场赛 A题 - Alice's Print Service (ZOJ 3726)

    Alice's Print Service Time Limit: 2 Seconds      Memory Limit: 65536 KB Alice is providing print ser ...