day03_jQuery
1.jQuery简介
- jQuery是兼容多浏览器、轻量级的免费开源JavaScript库。
- jQuery宗旨:Write Less,Do More【写的少,做的多】
2. ()
- $是jQuery,jQuery函数引用
- $()是触发【调用】核心函数
3. 核心函数作用【$()】
传入参数为函数时:$(function(){}),类似与window.onload作用
$(fn) 与window.onload=fn区别
加载时机不同,前者当前文档【绘制成功】后执行fn,后者当前文档【完全加载】后执行fn。
- 绘制成功:节点加载【绘制】成功【标签、属性、文本】
- 总结:$(fn)先执行,window.onload=fn后执行
在当前文档中,书写次数不同:前者可以书写多次,后者只能书写一次。
- 后者如果书写多次,后面window.onload会覆盖前面
- 语法结构不同,前者有两种语法结构,后者只有一种语法结构
- 传入参数为选择器字符串时: $(选择器字符串)
- 传入参数为HTML字符串时:$(HTML字符串),创建HTML元素节点
- 传入参数为DOM对象时: $(DOM对象),将DOM对象转换为jQuery对象
4. DOM对象与jQuery对象转换问题
为什么DOM对象与jQuery对象需要转换呢?
因为:默认情况,DOM对象与jQuery对象不能调用对方的属性或方法,所以,当需要调用对方的属性或方法时,需要类型转换
DOM对象转换为jQuery对象
- var $obj = $(DOM对象);
jQuery对象转换为DOM对象【将jQuery对象看成数组或集合(伪数组)】
- var domObj = $obj[0]
- var domObj = $obj.get(0)
5. jQuery选择器
5.1 基本选择器
- $(“#id”):id选择器
- $(“标签名”):标签选择器
- $(“.类名”):类选择器
- $(“*”):【全局】选择器
- $(“p,span,#id,.class”):并集选择器
5.2 层级【层次】选择器
- $(“E F”):后代选择器
- $(“E>F”):子代选择器【子一代】
- $(“E+F”):相邻选择器【后一个元素】
- $(“E~F”):同辈选择器【后面所有兄弟元素】
5.3 过滤选择器
基本过滤选择器
- $(“:first”):匹配第一个元素
- $(“:last”):匹配最后一个元素
- $(“:eq()”):匹配等于索引位置的元素
- $(“:gt()”):匹配大于索引位置的元素
- $(“:lt()”):匹配小于索引位置的元素
- $(“:even”):匹配偶数索引位置的元素
- $(“:odd”):匹配奇数索引位置的元素
- $(“:header”):匹配标题元素
- $(“:animated”):匹配动画元素
- $(“:not()”):匹配【】反向元素
内容过滤选择器
- $(“:contains()”):匹配包含【】字符的元素
- $(“:has()”):匹配含有【】标签的元素
- $(“:empty”):匹配空元素
- $(“:parent”):匹配非空元素
可见性过滤选择器
- $(“:hidden”):匹配隐藏元素,包括type=hidden,display:none
- %EF%BC%9A%E5%8C%B9%E9%85%8D%E5%8F%AF%E8%A7%81%E5%85%83%E7%B4%A0%EF%BC%8C%E4%B8%8E#card=math&code=%28%22%3Avisible%22%29%EF%BC%9A%E5%8C%B9%E9%85%8D%E5%8F%AF%E8%A7%81%E5%85%83%E7%B4%A0%EF%BC%8C%E4%B8%8E)(“:hidden”)相反
属性过滤选择器
- $(“[id]”):匹配带有ID属性的元素
- $(“[id=’’]”):匹配带有ID属性且ID的值为【】的元素
- $(“[id!=’’]”):匹配带有ID的值不等于【】的元素
- $(“[id^=]”):匹配ID属性的值以【】开头的元素
- =]”):匹配ID属性的值以【】结尾的元素
- $(“[id*=]”):匹配ID属性的值包含【】的元素
- $(“[id][name=’’]”):匹配包含ID属性,并且NAME的值为【】的元素,多项匹配
子元素过滤选择器
- $(“:first-child”):为【每个】父元素匹配第一个子元素
- $(“:last-child”):为每个父元素匹配最后一个子元素
表单过滤选择器
- $(“:input”):匹配所有表单项【input\select\textarea\button】元素
- $(“:text”):匹配文本框元素
- $(“:password”):匹配密码框元素
- $(“:radio”):匹配单选框元素
- $(“:checkbox”):匹配多选框元素
- $(“:submit”):匹配提交按钮元素
- $(“:reset”):匹配重置按钮的元素
- $(“:file”):匹配文件域元素
- $(“:hidden”):匹配隐藏域元素
- $(“:button”):匹配按钮元素
表单对象属性过滤选择器
$(“:enabled”):匹配可操作元素
$(“:disabled”):匹配不可操作元素
$(“:checked”):匹配单选框和多选框中选中的元素
$(“:selected”):匹配下拉列表中选中的元素