jquery系统学习笔记
一、初识:
jquery的优势:
1、轻量级(压缩后不到30KB)
2、强大的选择器(支持css1、css2选择器的全部 css3的大部分 以及一些独创的 加入插件的话还可支持XPath)
3、出色的Dom封装(简化原本复杂的操作)
4、可靠的事件处理机制(跨浏览器兼容性)
5、完善的Ajax操作(一个$.ajax()方法全部搞定)
6、不污染顶级变量(只使用了一个名为jQuery的对象 其别名$也可随时让出其控制权 见解决和其它库混用时解决冲突部分)
7、出色的浏览器兼容性(优秀的js库必备条件之一)
8、链式操作(点点操作 .end()方法返回上一个破坏性前的jQuery对象)
9、隐式迭代(jQuery中的方法被自动设计成操作jQuery对象(Dom集合)里的每一个Dom对象 而无需循环)
10、行为层与结构层分离(得益于选择器 类似css)
11、丰富的插件支持(jQuery的易扩展性 已经吸引了全球的开发者来编写jquery的插件)
12、完善的文档
13、开源
二、选择器(jquery的根基)
(支持css1 css2的全部 和 css3的绝对部分 以及一些特有的)
分类:基本选择器、层次选择器、过滤选择器和表单选择器(分类更易于记忆)
1、基本选择器
#id
.className
element
*
#id , .className
2、层次选择器
$("ancestor descendant") 后代选择器
$("parent>child") 子元素选择器
$("prev+next") 紧接着prev后的next元素 相当于 .next("选择器") 方法
$("prev~siblings") 选取prev后的所有siblings的兄弟元素 相当于nextAll()
备注: $("#prev").siblings("选择器") 方法选择#prev元素的所有的同辈元素
3、过滤选择器(与css中的伪类选择器方法相同 以一个冒号(:)开头)
过滤选择器:又分为基本过滤、内容过滤、可见性过滤、属性过滤、子元素过滤和表单对象属性过滤
基本过滤:
:first 选取第一个元素 如$("div:first") 选取所有div中的第一个
:last 选取最后一个元素
:not(selector) 去除所有与给定选择器匹配的元素
:even 选取索引是偶数的所有元素 索引从0开始 :odd 奇数行
:eq(index) 选取索引等于index的元素 :gt(index) 索引大于index 的 :lt(index) 索引小于index的
:header 选取所有标题元素 如 h1~h6
:animated 选取当前正在执行动画的元素
内容过滤选择器:
:contains(text) 选取含有文本内容为“text” 的元素
:empty 选取不包含子元素或文本的空元素(备注:有空格或者换行也不是空元素哦)
:has(selector) 选取“含有匹配元素的”