jQuery中的DOM操作

jQuery中的DOM操作

@(程序猿)[jQuery, DOM]

本文是笔者读完《锋利的jQuery》后对第三章DOM操作的总结



DOM操作的分类

  1. DOM Core
    DOM Core任何一种支持DOM的程序设计语言都可使用,可以用来处理任何一种使用标记语言编写出来的文档
  2. HTML-DOM
  3. CSS-DOM

jQuery中的DOM操作

查找节点

  1. 查找元素节点
    通过jQuery选择器完成
  2. 查找属性节点
    通过jQuery选择器找到需要的元素后,使用attr(” “)方法获取属性值,参数值为一个时,是需要查询属性的名字

创建节点

  1. 创建元素节点
    1. 创建新元素;通过jQuery的工厂函数$(HTML)
    2. 将新元素插入文档中;使用jQuery的append( )等方法
var $li_1 = $("<li></li>");
var $li_2 = $("<li></li>");
$("ul").append($li_1);
$("ul").append($li_2);

创建单个元素时,注意闭合标签

  1. 创建文本节点
var $li_1 = $("<li>农夫</li>");
var $li_2 = $("<li>果园</li>");
$("ul").append($li_1);
$("ul").append($li_2);

创建元素节点时直接把文本内容写出来

  1. 创建属性节点
var $li_1 = $("<li tittle = '农夫'>农夫</li>");
var $li_2 = $("<li tittle = '果园'>果园</li>");
$("ul").append($li_1);
$("ul").append($li_2);    

创建元素节点时一起创建属性

插入节点

方法描述
append( )向每一个匹配的元素内部追加内容
appendTo( )$(A).append(B)等效$(B).appendTo(A)
prepend( )向匹配的元素内部前置内容
prependTo( )$(A).prepend(B)等效$(B).prependTo(A)
after( )向匹配的元素之后插入内容
insertAfter( )$(A).after(B)等效$(B).insertAfter(A)
before( )向匹配的元素之前插入内容
insertBefore( )$(A).before(B)等效$(B).insertBefore(A)

删除节点

  1. remove( )
    所包含的后代节点将同时被删除,并返回一个指向已被删除的节点的引用;说明元素用remove( )删除后还可以继续使用
  2. detach( )
    与remove( )相同的是:一样从DOM中去掉所匹配的元素
    不同的是:删除后重新使用时原来元素绑定的事件还在,使用remove( )的话,之前绑定的事件将失效
  3. empty( )
    清空元素里的内容,元素自己本身的标签还在

复制节点

使用clone( )方法
若传递一个值为true的参数,可在复制元素的同时复制元素所绑定的事件

包裹节点

将某个节点用其他标记包裹起来
1. wrap( )

<strong>...</strong>
<strong>...</strong>

$("strong").wrap("<b></b>");

<b><strong>...</strong></b>
<b><strong>...</strong></b>
  1. wrapAll( )
<strong>...</strong>
<strong>...</strong>

$("strong").wrapAll("<b></b>");

<b>
<strong>...</strong>
<strong>...</strong>
</b>
  1. wrapInner( )
<strong>...</strong>
<strong>...</strong>

$("strong").wrapInner("<b></b>");

<strong><b>...</b></strong>
<strong><b>...</b></strong>

属性操作

  1. 获取和设置属性
var p_txt = $("p").attr("title");//获取<p>的title属性
$("p").attr("title" , "your title");//设置单个属性
$("p").attr({"title" : "your title" , "title" : "test"});//设置多个属性
  1. 删除属性
$("p").attr("title" , "your title");//设置单个属性
$("p").removeAttr("title");//删除tittle属性

样式操作

  1. 获取和设置样式
$("p").attr("class" , "high");//替换原class为新class(high)
  1. 追加样式
$("p").addClass("high");//给<p>元素追加新class(high)
  1. 移除样式
$("p").removeClass("class0");//删除<p>元素class(class0)
$("p").removeClass("class1 class2");//删除<p>元素多个class(class1和class2)
$("p").removeClass( );//删除<p>元素所有class
  1. 切换样式
$("p").toggleClass("high");//单击重复切换<p>元素的class(high)
  1. 判断是否含有某个样式
$("p").hasClass("high");

设置和获取HTML,文本和值

  1. html( )
  2. text( )
  3. val( )

获取和设置是同一个方法,用法类似attr( )

遍历节点

  1. children( )
    取得匹配元素的子元素集合
  2. next( )
    取得匹配元素后面紧邻的同辈元素
  3. prev( )
    取得匹配元素前面紧邻的同辈元素
  4. siblings( )
    取得匹配元素前后所有的同辈元素
  5. closest( )
    取得最近的匹配元素,不匹配则向上查找父元素
  6. parent( ),parents( )
    parent( )获得集合中每个匹配元素的父级元素
    parents( )获得集合中每个匹配元素的祖先元素

CSS-DOM操作

直接利用css( )方法获取元素样式属性

$("p").css("color");//获取样式颜色
$("p").css("opacity" , "0.5");//设置元素半透明
$("p").css("color" : "red" , "background" : "#888");//设置多个样式

获取,设置元素的高,宽

$("p").height( );//获取元素的高,元素页面中的实际高度,不带单位
$("p").height(100);//设置元素的高,默认单位(px)
$("p").width( );//获取元素的宽,元素页面中的实际宽度,不带单位
$("p").width("100px");//设置元素的宽
  1. offset( )
    获取元素在当前视窗的相对偏移,包含offset.topoffset.left两个属性
  2. position( )
    获取元素相对于最近的一个position样式属性设置为relativeabsolute的相对偏移,包含position.topposition.left两个属性
  3. scrollTop( )和scrollLeft( )
    获取元素的滚动条距离顶端和左侧的距离
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: jQuery是一种JavaScript库,它提供了一种简单的方式来操作DOM元素。通过使用jQuery,我们可以轻松地选择和操作HTML元素,添加或删除元素,以及更改元素的样式和属性。jQuery还提供了许多有用的功能,如事件处理程序和动画效果,使得开发Web应用程序变得更加容易和高效。 ### 回答2: jQuery是一个js库,它主要用于简化DOM操作和AJAX操作的代码编写。DOM操作是指通过JavaScript代码改变网页文档的结构、样式和内容,使其能够呈现出更加友好的效果。而jQuery正是针对这一方面做了大量的优化和封装。 在使用jQuery进行DOM操作时,我们可以使用它提供的一些方法来获取、创建或修改DOM元素。例如,通过选择器获取某一个元素,可以使用 $("#id")、$(".class")或者$("tag")等方法;通过调用attr()、css()、html()、val()等方法来修改元素的属性、样式、内容和值;通过append()、prepend()、before()、after()等方法来添加、移动或者复制元素等等。 使用jQuery进行DOM操作的好处之一在于它提供了非常简洁的代码,能够帮助我们快速完成复杂的DOM操作。在大型项目,这是非常重要的,因为不用编写大量重复的代码能够提高生产效率,同时也可以提高代码的可维护性和可读性。 此外,jQuery还能够极大地简化AJAX操作。我们可以使用它提供的ajax()方法来进行与后台数据的交互,而不需要手动编写XMLHttpRequest对象。此外,jQuery库还提供了丰富的插件和扩展功能,如时间管理、表单验证等等,可以极大地方便开发者完成各种任务。 总之,jQuery的出现为前端开发带来了极大的便利。通过它提供的DOM操作和AJAX功能,我们能够更加简洁高效地实现前端开发,并提高项目的质量和效率。 ### 回答3: jQuery是一种流行的JavaScript库,用于DOM操作,图像效果,事件处理,AJAX等功能。它让开发人员能够轻松选择和操作页面上的元素,而不必编写大量的JavaScript代码。 DOM操作jQuery的主要功能之一。通过jQuery,开发人员可以轻松地选择特定的HTML元素,然后对它们进行各种操作。例如,开发人员可以使用jQuery轻松地查找所有带有特定ID或类的元素,然后根据需要添加、删除或修改这些元素。 除了选择和操作元素之外,jQuery还为开发人员提供了一些有用的效果,例如动画效果,包括淡入淡出、滑动、展开和折叠等。这些效果可以用来制作动态和交互式控件,让页面更加生动有趣。 jQuery还可以用于处理事件。开发人员可以使用它来捕获鼠标、键盘和触摸等事件,并根据需要执行相应的操作。例如,在单击元素时,可以使用jQuery来显示或隐藏其他元素,或者发送一个AJAX请求以更新页面内容。 最后,jQuery还可以用于处理AJAX请求。它可以轻松地发送HTTP请求,并使用返回的数据更新页面内容,而无需使用传统的JavaScript技术。 总之,jQuery是一种强大而灵活的JavaScript库,可用于各种DOM操作、图像效果、事件处理和AJAX请求。无论是编写简单的动态网页还是复杂的Web应用程序,jQuery都是开发人员的理想选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ST_Pace

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值