jQuery学习笔记

1 基础

HTML  :一个人的裸体,是一个人的物质基础,是一个结构。

CSS  :一个人的漂亮外衣,使一个人看起来不是那么原始,修饰了一个人。

JavaScript :一个人的灵魂,使一个人具备了生命,让它动起来了。



2 jQuery的基础

2.1 jQuery对象引用

jQuery = window.jQuery = window.$ = function( selector, context ) {...}

在jQuery库内还有两个_$和_jQuery用来备份原先导入的库,备以后使用noConflict()交还使用权。



2.2 jQuery的prototype引用

jQuery.fn = jQuery.prototype = {init:function(){...}, ...}

jQuery.fn.init.prototype = jQuery.fn;



2.3 继承:目标对象是当前对象this。

jQuery.extend = jQuery.fn.extend = function() {...}



2.4 插件机制:主要是扩展jQuery的对象的prototype。

利用jQuery.extend和jQuery.fn.extend来进行扩展。

// 用于扩展jQuery对象本身,相当于静态方法。

jQuery.extend();

// 用于扩展jQuery的对象,相当于为每一个jQuery对象多扩展了。

jQuery.fn.extend();



3 选择器

jQuery使用CSS和XPATH的选择器。

3.1 基本

#id                                 // 通过ID选择

element                             // 通过标签选择

.class                              // 通过class选择

*                                   // 选择所有元素

selector1, selector2, selectorN     // 多个选择的合并



3.2 层级

ancestor descendant                 // 父元素下匹配所有后代元素

parent > child                      // 父元素下匹配所有子元素(下一层)

prev + next                         // 匹配所有紧接在prev元素后的next元素

prev ~ siblings                     // 匹配prev元素之后的所有siblings元素



3.3 简单

:first                              // 匹配找到的第一个元素

:last                               // 匹配找到的最后一个元素

:not(selector)                      // 从选中的集合中去除selector的集合

:even                               // 匹配所有索引值为偶数的元素,从0开始计数。

:odd                                // 匹配所有索引值为奇数的元素,从0开始计数。

:eq(index)                          // 匹配一个给定索引值的元素,从0开始计数。

:gt(index)                          // 匹配大于给定索引值的所有元素

:lt(index)                          // 匹配小于给定索引值的所有元素

:header                             // 匹配如h1,h2,h3的标题元素

:animated                           // 匹配所有正在执行动画效果的元素



3.4 内容

:contains(text)                     // 匹配包含给定文本的元素

:empty                              // 匹配不包含子元素或者文本的空元素

:has(selector)                      // 匹配的集合中含有selector的集合

:parent                             // 匹配含有子元素或者文本的元素

可见性

:hidden                             // 匹配所有不可见的元素(hidden或者"display:none")

:visible                            // 匹配所有可见的元素



3.5 属性

                                    // 注意:jQuery1.3废弃的前导符@。

[attribute]                         // 匹配包含属性attribute的元素

[attribute=value]                   // 匹配包含属性attribute=value的元素

[attribute!=value]                  // 匹配属性值attribute不等于value的元素

[attribute^=value]                  // 匹配属性值是以value开始的元素

[attribute$=value]                  // 匹配属性值是以value结束的元素

[attribute*=value]                  // 匹配属性值包含value的元素

[selector1][selector2][selectorN]   // 指多个属性匹配多满足的元素



3.6 子元素

:nth-child(index/even/odd/equation) // 匹配其父元素下的第N个子或奇偶子元素,从1开始计数。

:first-child                        // 匹配第一个子元素

:last-child                         // 匹配最后一个子元素

:only-child                         // 匹配只含有一个子元素的子元素



3.7 表单

:input                              // 匹配所有input, textarea, select, button元素

:text                               // 匹配所有text

:password                           // 匹配所有password

:radio                              // 匹配所有radio

:checkbox                           // 匹配所有checkbox

:submit                             // 匹配所有submit按钮

:image                              // 匹配所有image

:reset                              // 匹配所有reset

:button                             // 匹配所有button

:file                               // 匹配所有file

:hidden                             // 匹配所有hidden或者"display:none"



3.8 表单对象属性

:enabled                            // 匹配所有可用的元素

:disabled                           // 匹配所有不可用的元素

:checked                            // 匹配所有选中的元素(复选框、单选框、不包含select)

:selected                           // 匹配所有选中的option元素



4 核心

4.1 jQuery核心函数

jQuery(expression, [context])      // 在全局范围或者context范围(Dom或jQuery)内选择

jQuery(html, [lownerDocument])     // 根据HTML创建jQuery对象

jQuery(elements)                   // 将Dom对象创建为jQuery对象

jQuery(callback)                   // $(document).ready()的缩写



4.2 jQuery对象访问

each(callback)                     // 遍历jQuery选择的对象

                                   // callback参数有两个,1是下标,2是DOM对象(就是this对象



)。使用$this的话,是jQuery对象。

size()                             // 返回jQuery对象中元素个数。

length                             // 同size()

selector                           // 返回jQuery对象的selector

context                            // 返回jQuery对象的context

get()                              // 返回所选中的jQuery对象的DOM数组

get(index)                         // 返回一个DOM元素,可以写成类似$("div")[0]。jQuery具有



数组特性。

index(subject)                     // 返回DOM对象的位置



4.3 数据缓存

data(name)                         // 返回在jQuery对象上缓存的数据

data(name, value)                  // 在jQuery对象上设置缓存数据

removeData(name)                   // 在元素上移除存放的数据

queue([name])                      // 返回在jQuery对象上的队列(一个函数数组)

queue([name, callback])            // 在队列后面加入一个函数

dequeue([name], queue)             // 用新的函数数组代替原先的函数数组

dequeue([name])                    // 从队列最前端移除一个队列函数,并执行他。



4.4 多库共存

jQuery.noConflict()                // 将$使用权交还给原先的库

jQuery.noConflict(extreme)         // 将$和jQuery使用权交还给原先的库



5 属性

5.1 属性

attr(name)                         // 取得属性值

attr(properties)                   // properties是一个键值对对象,设置属性。

attr(key, value)                   // 设置属性

attr(key, fn)                      // 设置属性,由函数fn返回值。

removeAttr(name)                   // 删除一个属性



5.2 CSS类

addClass(class)                    // 使用CSS的类选择器添加CSS

removeClass(class)                 // 删除CSS样式

toggleClass(class)                 // 若存在(不存在),则删除(添加)。

toggleClass(class, switch)         // 若switch为true,则加上对应的class,否则删除。



5.3 HTML代码

html()                             // 取第一个元素的innerHtml

html(val)                          // 设置每一个元素的innerHtml



5.4 文本

text()                             // 取得所有匹配元素的innerText

text(val)                          // 设置所有匹配元素的innerText



5.5 值

val()                              // 获得第一个匹配元素的value属性值

val(val)                           // 设置每一个匹配元素的value属性值

                                   // val可以是一个值,也可以是多个值(一个数组)

你可能感兴趣的:(jquery)