jQuery是什么
是高度封装了js代码的模块(效率相对低)
- 封装了dom节点
- 封装了操作dom节点的简便方法
jQuery的优势
使js代码对浏览器的兼容性做的更好了
jQuery 的两大特点
-
链式编程:比如.show()和.html()可以连写成.show().html()
-
隐式迭代:隐式 对应的是 显式。隐式迭代的意思是:在方法的内部进行循环遍历,而不用我们自己再进行循环,简化我们的操作,方便我们调用
jQuery的导入
https://code.jquery.com/jquery-3.4.1.js 未压缩版
https://code.jquery.com/jquery-3.4.1.min.js 压缩版
下载:保存在本地文件里
引入:<script src="文件名"></script>
$和jQuery的关系
$就是jQuery名字的简写,实际上是相同的
jQuery 使用 $
符号原因:书写简洁、相对于其他字符与众不同、容易被记住
jQuery对象和DOM对象的关系和转换
jQuery封装了DOM
DOM转成jQuery: jQuery(DOM对象) 或 $(DOM对象)
jQuery转成DOM: jQuery对象[index]
jQuery选择器
基本选择器
$("#id") //id选择器 $("tagName") //标签选择器 $(".className") //class选择器 $("*") //通用选择器 $("div.c1") // 交集选择器 找到有含有c1类的div标签 $("#id, .className, tagName") //并集选择器
层级选择器
$("x y"); // 后代选择器 找x的所有后代y(子子孙孙) $("x > y"); // 子代选择器 找x的所有儿子y(儿子) $("x + y") // 毗邻选择器 找所有紧挨在x后面的y $("x ~ y") // 弟弟选择器 找x之后所有的兄弟y
属性选择器
$('[属性名]') 必须是含有某属性的标签 $('a[属性名]') 含有某属性的a标签 $('选择器[属性名]') 含有某属性的符合前面选择器的标签 $('选择器[属性名="aaaa"]') 属性名=aaa的符合选择器要求标签 $('选择器[属性名$="xxx"]') 属性值以xxx结尾的 $('选择器[属性名^="xxx"]') 属性值以xxx开头的 $('选择器[属性名*="xxx"]') 属性值包含xxx $('选择器[属性名1][属性名2="xxx]') 拥有属性1,且属性二的值='xxx',符合前面选择器要求的
筛选器
基础筛选器
用法 : $('选择器:筛选器')
扫描二维码关注公众号,回复:
7033707 查看本文章
作用于选择器选择出来的结果
$('选择器:筛选器') $('选择器:first') 作用于选择器选择出来的结果 first 找第一个 last 最后一个 eq(index) 通过索引找 even 找偶数索引 odd 找奇数索引 gt(index) 大于某索引的 lt(index) 小于某索引的 not(选择器) 不含 符合选择器 要求的 has(选择器) 后代中含有该选择器要求的(找的不是后代,找的是本身)
表单筛选器
type筛选器
根据input的type标签进行筛选
$(':text') $(':password') $(':radio') $(':checkbox') $(':file') $(':submit') $(':reset') $(':button') 注意 : date type的input是找不到的
状态筛选器
$(':disabled') $(':enabled') $(':checked') $(':selected')
jQuery的筛选器方法
找兄弟 :$('ul p').siblings() 找哥哥 $('ul p').prev() 找上一个离我最近的哥哥 $('ul p').prevAll() 找所有哥哥 $('ul p').prevUntil('选择器') 找哥哥到某一个地方就停了 找弟弟 : next() nextAll() nextUntil('选择器') 找祖宗 : parent() parents() parentsUntil('选择器') 找儿子 : children()
再进一步的筛选方法
first() last() eq(index) not('选择器') 去掉满足选择器条件的 filter('选择器')交集选择器,在所有的结果中继续找满足选择器要求的 find('选择器') 后代选择器 找所有结果中符合选择器要求的后代 has('选择器') 通过后代关系找当代 后代中有符合选择器要求的就把当代的留下