Chapter 1 认识jQuery

  • jQuery对象和DOM对象的相互转换

获取jQuery对象:

var $variable = JQuery对象;

获取DOM对象:

var variable = DOM对象;

jQuery对象转换成DOM对象:

var $cr = $("#cr");    //jQuery对象
var cr = $cr[0]; //DOM对象

Chapter 2 jQuery选择器

$('#tt') 获取的是对象,即使网页上没有这个元素也不会报错。应该根据获取的元素长度来判断是否存在

if ( $("#tt").length > 0) {
//do something
}
  • 过滤选择器: 以一个冒号(:)开头

:first 选取第一个元素

:even 选取索引是偶数的所有元素

:odd 选取索引是奇数的所有元素

:eq(index) 选取索引等于index的元素,从0开始计算(只匹配一个元素)

  • 内容过滤选择器

:empty 选取不包含子元素或者文本的空元素

:has(selector) 选取含有选择器所匹配的元素的元素

  • 属性过滤选择器

$("div[id]") 选取拥有属性id的元素

  • 子元素过滤选择器

:nth-child(index) 选取每个父元素下的第index个子元素

  • 表单选择器

:input 选取所有的<input>、<textarea>、<select>和button元素

$("form :input").length, (注意和$("form input")的区别)

  • 选择器的注意事项

1、 选择器含有特殊符号. 、 [ 等

需要使用转义字符转义

$("#id\\#b") 转义特殊字符“#”,需要两个\\,一个转义用,一个双引号用

2、 选择器含有空格

$('.test :hidden') 带空格的,选取class为"test"的元素里面的隐藏元素

$('.test:hidden') 不带空格,选取隐藏的class为"test"的元素

Chapter 3    jQuery中的DOM操作

  • 属性节点attr()

查找属性节点:$("p").attr("title"); 获取<p>元素的节点属性title

删除节点:removeAttr()

  • 插入节点 (<p>我想说</p>)

向元素内部追加内容:

$("p").append("<b>你好</b>");        <p>我想说 <b>你好</b></p>

在元素之后插入内容:

$("p").after("<b>你好</b>");        <p>我想说 </p><b>你好</b>

(insertAfter() 则颠倒了操作)

  • 删除节点

remove() 该节点所包含的所有后代节点将同时被删除,这个方法的返回值的一个指向已被删除的节点的引用。

detach() 也是删除所有匹配的元素,但是和remove()不同的是,所有绑定的事件、附加的数据都会留下来。

empty() 清空节点,只是内容被清空

  • 复制节点
$("li").click(function() {
$(this).clone().appendTo("ul");
};

复制的新元素并不具有任何行为。在clone()方法中传递一个参数true,则复制元素的同时复制元素所绑定的事件。

  • 样式

addClass()方法:追加class类

removeClass():移除样式

toggle():行为的重复切换

toggleClass():类名的重复切换(类名存在则删除,不存在则添加)

  • 设置和获取HTML、文本和值

html() 读取或设置某个元素的HTML内容 (类似innerHTML)

text() 读取或设置某个元素的文本内容 (jQuery的text()方法支持所有浏览器)(类似innerText)

val() 设置和获取元素的值 (类似value属性)

  • 遍历节点

children() 取得匹配元素的子元素集合(不考虑其他后代元素)

next() 取得匹配元素后面紧邻的同辈元素

siblings() 取得匹配元素前后所有的同辈元素

Chapter 4    jQuery中的事件和动画

$(document).ready()方法: 在DOM载入就绪时,就能对其进行操纵。每次调用都会在现有行为上追加新的行为。

简写方式

$(function(){...}) 
或 $().ready(function(){...});