jQuery的使用

119 阅读2分钟

jQuery是什么

JQuery是JavaaScript的一个库,就是一个JS文件,存放在很多封装好的JS的函数,这些函数能够实现JS的一些操作,这样我们就可以简单高效的使用封装好的这些功能。

jQuery 获取元素

使用jQuery的第一步:将一个选择表达式,放进构造函数jQuery()(简写为$),然后得到被选中的元素

选择表达式可以是CSS选择器也可以是jQuery特有表达式,jQuery还提供各种强大的过滤器,对结果集进行筛选

选择器

$("选择器") //里面选择器直接写css选择器即可,注意要加引号(单引号或者双引号都可以)

$('#id')  //ID选择器 选择指定id的元素

$('*')  //全选选择器 选择所有元素

$('.class')  //类选择器 选择同一类class的元素

$('div')  //标签选择器 选择同一类标签的所有元素

$('div,p,li')  //并集选择器 选择所列标签的所以元素

$('li.class')  //交集选择器 需要同时满足这两个条件的元素,注意中间没有空格

$('ul>li')  //子代选择器  使用>获取亲儿子层级的元素

$('ul li')  //后代选择器  使用空格获取ul下的所以li元素,包括孙子等

特有表达式

$('a:first') //选择网页中第一个a元素

$('tr:odd') //选择表格的奇数行

$('li:odd') //选择li元素中索引号为奇数的元素

$('li:even') //选择li元素中索引号为偶数的元素

$('#myForm :input') // 选择表单中的input元素

$('div:visible') //选择可见的div元素

$('div:gt(2)') // 选择所有的div元素,除了前三个

$('div:animated') // 选择当前处于动画状态的div元素

改变结果集

$('li').parent(); //选择父级元素

$('ul').children('li'); //相当于$('ul>li'),最近一级(亲儿子)

$('ul').find('li'); //相当于$('ul li'),后代选择器

$('.first').sibling('li'); //选择兄弟节点,不包含自己本身

$('div').has('p'); // 选择包含p元素的div元素

$('div').not('.myClass'); //选择class不等于myClass的div元素

$('div').filter('.myClass'); //选择class等于myClass的div元素

$('div').first(); //选择第1个div元素

$('div').eq(5); //选择第6个div元素

jQuery 链式操作

jQuery链式操作: 选中网页元素以后,可以对它进行一系列操作,并且所有操作可以连接在一起,以链条的形式写出来,链式操作可节省很多代码量。

$('div').find('span').eq(1).html('Hello');

jQuery 创建及操作网页元素

创建网页元素

直接将新元素放进构造函数jQuery($)中:

$('<div>Hello</div>');

复制、删除和清空

复制元素:.clone()

删除元素: .remove()和.detach() 两者区别,前者不保留被删除元素的事件,后者保留,有利于重新插入文档时使用。

清空元素内容(但是不删除该元素 : .empty()

取值和赋值

jQuery使用同一个函数,来完成取值(getter)和赋值(setter),到底是取值还是赋值,由函数的参数决定。

$('h1').html(); //html()没有参数,表示取出h1的值

$('h1').html('Hello'); //html()有参数Hello,表示对h1进行赋值

注意:

若结果集包含多个元素,赋值时,将对其中所有元素赋值;

取值时,则是只取出第一个元素的值

(text()例外,它取出所有元素的text内容)

jQuery 移动元素

移动元素有两种方法:

(1)移动该元素到达需要的位置

(2)移动其他元素,让该元素到达需要位置

  • insertAfter()
$('div').insertAfter($('p')); //把div元素移动p元素后面
  • .after()
$('p').after($('div'))  // 将 p 移动到 div 前面

两种方法效果相同,重大差别在于:返回的元素不一样。第一种方法返回div元素,第二种方法返回p元素

jQuery 修改元素的属性

jquery使用attr()来获取和设置元素属性

attr:attribute(属性)的缩写,是js中setAttribute()和getAttribute()的简化

最基本常用的用法:

$("img").attr("src","img/a.jpg");
$("img").attr("width","100px");

参考资料

jQuery设计思想-阮一锋的网络日志