《jQuery部分操作》

217 阅读1分钟

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