jQuery的基本设计思想和主要用法,就是 "选择某个网页元素,然后对其进行某种操作" 。
文中的$是构造函数jQuery()
1. jQuery 如何获取元素
将一个选择表达式放进构造函数jQuery(),然后选中目标元素。
选择表达式可以是CSS选择器和jQuery特有的表达式。
CSS选择器:
$('#shark') //选择ID为shark的网页元素
$('div.blue') // 选择class为blue的div元素
jQuery特有的表达式
$('div:visible') //选择可见的div元素
$('div:gt(3)') // 选择前四个以外的所有的div元素
2. jQuery 的链式操作是怎样的
对选中的网页元素进行一系列操作,所有操作可以像链条一样连接在一起。
比如:
$('div').find('.pa').first();
拆开看:
$('div') //找到div元素
.find('.pa') //选择div元素中的class为pa的标签
.first() //选择第一个class为pa的标签
$('div').find('.pa').first().end()还可以退到'选择div元素中的class为pa的标签'这一步。
每一步返回的都是jQuery对象。
3. jQuery 如何创建元素
把新元素直接传入jQuery的构造函数即可
$('<p>Hello</p>');
$('<li class="new">new list item</li>');
$('ul').append('<li>list item</li>');
4. jQuery 如何移动元素
需求:选中一个div元素,把它移动到p元素后面。
-
直接移动该元素
$('div').insertAfter($('p')); //把div元素移动p元素后面 返回div元素 -
移动其他元素使得目标元素达到我们想要的位置
$('p').after($('div')); //把p元素加到div元素前面 返回p元素
这种模式的操作方法共四对:
.insertAfter()和.after():在现存元素的外部,从后面插入元素
.insertBefore()和.before():在现存元素的外部,从前面插入元素
.appendTo()和.append():在现存元素的内部,从后面插入元素
.prependTo()和.prepend():在现存元素的内部,从前面插入元素
5. jQuery 如何修改元素的属性
attr()函数获取标签的某个属性:
$('#shark').attr('class') //获取id为shark的标签的属性值
attr()修改或者添加标签的属性值:
$('#shark').attr('class',blue) //存在就修改,不存在就是添加
移除属性:removeAttr()
$(selector).removeAttr(attribute)// 从被选元素中移除属性
复制元素:.clone()
删除元素:.remove()和.detach() //前者不保留被删除元素的事件,后者保留 有利于重新插入文档时使用。
清空(不删除)元素内容:.empty()
本片博客参考:
阮一峰《jQuery设计思想》
W3school