jQuery功能简述

211 阅读1分钟

引言: jQuery是目前使用最广泛的javascript函数库,全球80%以上的网站都在使用。

jQuery如何获取元素

jQuery('#xxx')的返回值并不是元素,而是一个api对象。

以$开头的变量即为jQuery对象
$('div').find('.red')//查找#xxx里的.red元素
$('div').parent()//获取div的父元素
$('div').children()//获取div的子元素
$('div').siblings()//获取div的同级元素
$('div').index()//获取div的第n个元素
$('div').next()//获取div之后的元素
$('div').prev()//获取div之前的元素
$('div').each(fn)//遍历每一个元素并执行fn

jQeury的链式操作是怎样的

jQuery支持获取元素之后可以对它进行一系列操作,并且所有操作可以连接在一起,以链条的形式写出来。 比如:

$('test').find('.child').addClass('red');
分解开来就是下面这样:

$('.test')//获取test元素
 .find('.child')//找到其中child元素
 .addClass('red')//增加一个class=red的内容

因为jQuery的每一步操作,返回的都是一个jQuery对象,所以不同的操作可以连在一起。

jQuery还提供了.end()方法,使得结果集可以后退一步。

$('.test')//获取test元素
 .find('.child')//找到其中child元素
 .addClass('red')//增加一个class=red的内容
 .end()//退回到child的上一层
 .addClass('blue')//给test增加class=blue

jQyery如何创建元素

将新元素直接传入jQuery的构造函数就可以了。

$('<div><span>1</span></div>')//创建div
 .appendTo(document.body)//插入到body

jQuery如何移动元素

.insertAfter()和.after():在现存元素的外部,从后面插入元素
.insertBefore()和.before():在现存元素的外部,从前面插入元素
.appendTo()和.append():在现存元素的内部,从后面插入元素
.prependTo()和.prepend():在现存元素的内部,从前面插入元素

需要注意两种方法返回的元素不一样。

$('div').appendTo($('p'))
$('p').append($('div'))
两种方法的效果都是把p插入到div后面,但第一种返回div元素,第二种返回p元素。

删除元素

$div.remove()//不保留被删除元素的事件
$div.empty()//清空元素内容,但是不删除该元素

JQuery如何修改元素的属性

$div.text()//读写text内容
$div.html()//读写html内容
$div.attr()//读写属性
$div.css()//读写style
$div.addClass()
$div.on('click',fn)
$div.off('click',fn)

根据函数参数的不同,来决定是取值还是赋值。

参考资料:阮一峰《jQuery设计思想》;饥人谷前端学习课程。