学习jquery-Jquery基础知识

(原文地址http://www.cnblogs.com/ILYljhl/p/3180253.html)  

 一、jquery是什么?

        其实它就是我看不懂的js的一个框架,其主要思想是,通过选择器(jquery选择器非常强大)查找对应的节点,然后对这个节点做一个封装(封装成jquery对象)。通过调用jquery对象的属性和方法来实现对节点的操作。

        使用jquery的好处是:

        1、将不同浏览器之间的差异兼容起来;(这个我的理解非常浅,谁懂的说下咯)

        2、代码更加简洁,维护方便。这个我知道。

      二、使用jquery编程的步骤?

        1、先把要操作的节点找到,怎么找呢?用jquery的选择器去找(非常强大的选择器);

        2、找到节点后,因为此时找到的节点都被封装成jquery对象了,所以就调用该对象的属性和方法来实现对节点的操作;

      鉴于我目前对于对象的属性和方法还不太了解,我就先学好强大的jquery选择器吧!

      三、什么是选择器?

        懂的css的人都知道它有自己的选择器,其实jquery选择器就是模仿到css选择器来的,所以我觉得上手快些!jquery选择器支持css1和css2的全部和css3的部分选择器,同时它也有少量的独有的选择器。选择器分为4类:基本选择器、层次选择器、过滤选择器(基本过滤选择器、内容过滤选择器、可见性过滤选择器、属性过滤选择器、子元素过滤选择器、表单对象属性过滤选择器)、表单选择器。

        下面一一说明:

        1、基本选择器:最常用也是最简单的选择器。它通过id、class、标签名等来查找节点元素。每个id只允许出现一次,而class允许重复使用。

#id 给指定的id匹配一个元素 返回单个元素 $("#test") id为test的元素
#class 匹配给定的类名 返回集合元素 $(".test")类名为test的元素
element 匹配给定的标签名 返回集合元素 $("p")所有的p元素
* 匹配所有元素 返回集合元素 $("*")html中的所有元素(少用)
selector1、selctor2。。。selectorN 匹配给定的集合 返回集合元素 $("div,span,p.myclass")所有的div,span和类名为myclass的p元素

         2、层次选择器:通过节点元素之间的层次关系来获得特定元素、例如后代元素、子元素、相邻元素、兄弟元素。

$("ancestor descendant") 选取ancestor里所有的descendant元素 返回集合元素 $("div span")选取div里的所有span元素
$("parent>child") 选取parent下的child元素,与第一个不同哈 返回集合元素 $("div>span")选取div下的元素名是span的元素
$("prev+next") 选取紧接在prev后的next元素 集合元素 $(".one+div")选取class为one的下一个div元素
$("prev~siblings") 选取prev元素之后的所有siblings元素 集合元素 $(".one~div")选取class为one元素后面的所有div元素

            在层次选择器中,第一个和第二个比较常用,而第三个和第四个可以在jquery中用更加简单的方法代替,所以使用的几率小些。可以用next()代替$("prev+next"),用nextAll()方法代替$("prev~siblings");这里将siblings()方法与$("prev~siblings")进行比较:siblings()方法呢获取的是这个元素的兄弟元素包含前面或者后面的,与位置无关。而$("prev~siblings")只能获取这个元素后面的兄弟元素。

          3、过滤选择器就分类多了。主要是通过特定的过滤规则来筛选出所需的DOM元素,过滤规则与css中的伪类选择器语法相同,即选择器都以":"开头。

             3(1)、基本过滤选择器

:first 选取第一个元素 返回单个元素 $("div:first")获取所有div元素的第一个div元素
:last 选取最后一个元素 返回单个元素 $("div:last")获取所有div元素中的最后一个div元素
:not(selector) 去除所有匹配selector选择器的元素 返回集合元素 $("div:not(.mydiv)")选取class名不为mydiv的所有div元素
:even 选取索引为偶数的元素,注意:索引从0开始 返回集合元素 $("input:even")选取索引为偶数的input元素
:odd 选取索引为奇数的元素 返回集合元素 $("input:odd")选取索引为奇数的input元素
:eq(index) 选取索引为index的元素 返回单个元素 $("input:eq(1)")选取索引为1的input元素
:gt(index) 选取索引大于index的元素 返回集合元素 $("input:gt(4)")选取索引大于4的input元素
:lt(index) 选取索引小于index的元素 返回集合元素 $("input:lt(4)")选取索引小于4的input元素
:header 选取所有的标题元素,例如h1,h2,h3``h6 返回集合元素  $(":hear")选取网页中的所有标题元素
:animated 选取当前正在执行动画的元素(常用语判断语句中) 返回集合元素 $("div:animated")选取正在执行动画的div元素

             3(2)、内容过滤选择器

:contains(text) 选取含有文本内容为text的元素 返回集合元素 $("div:contains("我"))选取含有我文本的所有div元素
:empty 选取不包含子元素或者文本的空元素 集合元素 $("div:empty")选取不包含子元素或者文本元素的div元素,相当于空标签
:has(selector) 选取有所匹配元素的元素 返回集合元素 $("div:has(p)")选取含有p元素的div元素
:parent 选取含有子元素或者文本元素的元素 返回集合元素 $("div:parent")选取含有子元素和文本元素的div元素

              3(3)、可见性过滤选择器,根据元素的可见和不可见行来选择相应的元素

:hidden 选取所有不可见元素 返回集合元素

$(":hidden")选取所有不可见的元素,

包括<input type="hidden"><div style="display:none"><div style="visibility:hidden">等元素

:visible 选取所有可见元素 返回集合元素 $(div:visible")选取所有可见的div元素

             3(4)、属性过滤选择器,通过元素的属性来获取相应的元素。

[attribute] 选取拥有此属性的元素 集合元素 $("div[id]")选取拥有id属性的div元素
[attribute=value] 选取属性的值为value的元素 集合元素 $("div[title="mytitle"])选取title属性为mytitle的div元素

[attribute!=value]

选取属性的值不为value的元素

集合元素

$("div[title!="mytitle"])选择title属性不为mytitle的div元素

[attribute^=value]

选取属性的值以value开始

集合元素

$("div[title^="a"]")选取title属性以a字母开头的div元素

[attribute$=value]

选取属性的值以value结束

集合元素

$("div[title$="a"]")选取title属性以a字母结束的div元素

[attribute*=value]

选取属性的值含有value的元素

集合元素

$("div[title*="a"]")选取title属性含有a字母的div元素

[selector1][selector2]

[selectorN]  

用属性选择器合并成一个复合属性选择器,满足多个条件,

每选择一次就会缩小一次范围

集合元素 $("div[id][title="mytitle"]")选取含有i的属性且title属性为mytitle的div元素

             4(5)、子元素过滤选择器,子元素过滤选择器相对于其他选择器要稍微复杂些,注意它与普通的过滤器的差别。

:nth-child(index/odd/even/equation) 选取每个父元素下的第index个元素或者奇偶元素(index从1算起) 集合元素 :eq(index)只匹配一个元素,:nth-child(index)将为每一个父元素匹配子元素,并且他的index是从1开始算起的
:first-child 选取每个父元素下的第一个子元素 集合元素 :first只获取单个元素,而:first-child获取每个父元素下个的第一个子元素
:last-child 选取每个父元素下的最后一个元素 集合元素 同理
:only-child

如果某个元素时它父元素中的唯一一个子元素,那么将会被匹配,

如果父元素中含有其他元素,那么将不会被匹配

集合元素 $("ul li:only-child")在ul中选取是唯一子元素的li元素

             3(6)、表单对象属性过滤选择器,表单对象比如被选中的下拉框、多选框等。

:enabled 选取所有可用元素 集合元素 $("#form:enabled")选取id为form的表单里所有可用元素
:disabled 选取所有不可用元素 集合元素 选取不可用的元素
:checked 选取被选择的元素(单选框、复选框) 集合元素 $("input:checked")选取所有被选中的input元素
:selected 选取所有被选中的选项元素(下拉列表) 集合元素 $("selected:selected")选取所有被选中的选中元素

          4、表单对象选择器,利用这个选择器能极其方便的获取到表单的某个或某个类型的元素。

:input 选取所有的<input>,<textarea>,<select>,<button>元素 集合元素 $(":input")
:radio 选取所有的单选框元素 集合元素 $(":radio")
:file 选取所有的上传域 集合元素 $(":file")
:text 选取所有的单行文本框 集合元素 $(":text")
:password 选取所有密码框 集合元素 $(":password")
:checkbox 选取所有复选框 集合元素 $(":checkbox")
:submit 选取所有提交按钮 集合元素 $(":submit")
:image 选取所有图像按钮 集合元素 $(":image")
:reset 选取所有重置按钮 集合元素 $(":reset")
:button 选取所有的按钮 集合元素 $(":button")
:hidden 选取所有不可见的元素 集合元素 $(":hidden")

     合理的利用每个选择器,达到事半功倍的效果!没事来看看加深加深印象,对于那些大神们,你们就绕道而行吧!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
完整版:https://download.csdn.net/download/qq_27595745/89522468 【课程大纲】 1-1 什么是java 1-2 认识java语言 1-3 java平台的体系结构 1-4 java SE环境安装和配置 2-1 java程序简介 2-2 计算机中的程序 2-3 java程序 2-4 java类库组织结构和文档 2-5 java虚拟机简介 2-6 java的垃圾回收器 2-7 java上机练习 3-1 java语言基础入门 3-2 数据的分类 3-3 标识符、关键字和常量 3-4 运算符 3-5 表达式 3-6 顺序结构和选择结构 3-7 循环语句 3-8 跳转语句 3-9 MyEclipse工具介绍 3-10 java基础知识章节练习 4-1 一维数组 4-2 数组应用 4-3 多维数组 4-4 排序算法 4-5 增强for循环 4-6 数组和排序算法章节练习 5-0 抽象和封装 5-1 面向过程的设计思想 5-2 面向对象的设计思想 5-3 抽象 5-4 封装 5-5 属性 5-6 方法的定义 5-7 this关键字 5-8 javaBean 5-9 包 package 5-10 抽象和封装章节练习 6-0 继承和多态 6-1 继承 6-2 object类 6-3 多态 6-4 访问修饰符 6-5 static修饰符 6-6 final修饰符 6-7 abstract修饰符 6-8 接口 6-9 继承和多态 章节练习 7-1 面向对象的分析与设计简介 7-2 对象模型建立 7-3 类之间的关系 7-4 软件的可维护与复用设计原则 7-5 面向对象的设计与分析 章节练习 8-1 内部类与包装器 8-2 对象包装器 8-3 装箱和拆箱 8-4 练习题 9-1 常用类介绍 9-2 StringBuffer和String Builder类 9-3 Rintime类的使用 9-4 日期类简介 9-5 java程序国际化的实现 9-6 Random类和Math类 9-7 枚举 9-8 练习题 10-1 java异常处理 10-2 认识异常 10-3 使用try和catch捕获异常 10-4 使用throw和throws引发异常 10-5 finally关键字 10-6 getMessage和printStackTrace方法 10-7 异常分类 10-8 自定义异常类 10-9 练习题 11-1 Java集合框架和泛型机制 11-2 Collection接口 11-3 Set接口实现类 11-4 List接口实现类 11-5 Map接口 11-6 Collections类 11-7 泛型概述 11-8 练习题 12-1 多线程 12-2 线程的生命周期 12-3 线程的调度和优先级 12-4 线程的同步 12-5 集合类的同步问题 12-6 用Timer类调度任务 12-7 练习题 13-1 Java IO 13-2 Java IO原理 13-3 流类的结构 13-4 文件流 13-5 缓冲流 13-6 转换流 13-7 数据流 13-8 打印流 13-9 对象流 13-10 随机存取文件流 13-11 zip文件流 13-12 练习题 14-1 图形用户界面设计 14-2 事件处理机制 14-3 AWT常用组件 14-4 swing简介 14-5 可视化开发swing组件 14-6 声音的播放和处理 14-7 2D图形的绘制 14-8 练习题 15-1 反射 15-2 使用Java反射机制 15-3 反射与动态代理 15-4 练习题 16-1 Java标注 16-2 JDK内置的基本标注类型 16-3 自定义标注类型 16-4 对标注进行标注 16-5 利用反射获取标注信息 16-6 练习题 17-1 顶目实战1-单机版五子棋游戏 17-2 总体设计 17-3 代码实现 17-4 程序的运行与发布 17-5 手动生成可执行JAR文件 17-6 练习题 18-1 Java数据库编程 18-2 JDBC类和接口 18-3 JDBC操作SQL 18-4 JDBC基本示例 18-5 JDBC应用示例 18-6 练习题 19-1 。。。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值