本文实例分析了jQuery添加删除DOM元素的方法。分享给大家供大家参考,具体如下:
介绍
DOM是Document Object Modeule的缩写,一般来说,DOM操作分成3个方面。
1、DOM Core
DOM Core并不专属于javascript,任何一种支持DOM的程序设计语言都可以使用它,用途也远不止仅限于网页,也可以用来处理任何一种使用标记语言编写出来的文档,如XML。
例如:document,getElementsByTagName("form");//使用DOM Core来获取表单对象的方法。
2、HTML-DOM
在使用Javascript和DOM为HTML文件编写脚本时,有许多属于HTML-DOM的属性,HTML-DOM的出现甚至比DOM Core还要早,他提供了一些更简明的记号来描述各种HTML元素的属性。
例如:复制代码 代码如下:document.forms //HTML-DOM提供了一个forms对象。
PS:可以看出,获取对象、属性即可以用DOM Core来实现民,也可以用HTML-DOM实现。
3、CSS-DOM
CSS-DOM是针对CSS的操作,在javascript中,CSS-DOM主要的作用是获取和设置style对象的各种属性,由此达到网页呈现出各种不同的效果.
例如:复制代码 代码如下:element.style.color="red";//设置某元素的字体颜色的方法。
常用方法
1.查找元素节点
复制代码 代码如下:var $li = $("ul li:eq(0)");//获取ul标记下的第一个li,也可以写成 $("#ulID li:eq(0)");
2.查找元素属性
利用jquery的attr()方法来获取元素的各种属性的值,attr()方法的参数可以是一个,也可以是两个。
当参数是一个时,则是要查询的属性名称。
当参数是两个时,则可以设置属性的值。
alert($("#id").attr("title")); //输出元素的title属性.一个参数 $("#id").attr("title","改变title值"); //改变元素的title属性值.二个参数
3.添加元素节点
$(html) 简单说明一下$(html)方法会根据传入的html标记字符串创建一个dom对象,并将这个dom对象包装成一个jquery对象返回,总之就是把标记所有html代码都放到$()工厂里面就行了!
例:
var $htmlLi = $(" <li title='香蕉'>香蕉</li>"); //创建DOM对象 var $ul = $("ul"); //获取UL对象 $ul.append($htmlLi); //将$htmlLi追加到$ul元素的li列表
下面列出部分插入节点的方法
方法
描述
示例
Append()
向每个匹配的元素内追加内容
HTML代码
<ul></ul>
JQuery代码
$(“ul”).append(“<li>AA</li>”);
结果
<ul>
<li>AA</li>
</ul>
appendTo()
该方法和Append()相反,a.Append(b)是将b追加到a中,而appendTo()是将b追求到a中
HTML代码
<ul></ul>
JQuery代码
$ (“<li>AA</li>”).appendTo (“ul”).;
结果
<ul>
<li>AA</li>
</ul>
Prepend()
向每个匹配的元素内部前置内容
HTML代码
<p>哈哈</p>
JQuery代码
$(“p”).prepend(“<b>ABC</b>”);
结果
<p><b>ABC</b>哈哈</p>
prependTo()
该方法和Prepend()相反,a. Prepend (b)是将b前置到a中,而prependTo ()是将b前置到a中
HTML代码
<p>哈哈</p>
JQuery代码
$(“<b>ABC</b>”).prependTo.(“p”);
结果
<p><b>ABC</b>哈哈</p>
After()
在每个匹配的元素之后插入内容,是之后
HTML代码
<p>AAA</p>
JQuery代码
$(“p”).After(“<b>cc</b>”);
结果
<p>AAA</p><b>cc</b>
insertAfter()
和After()相反
HTML代码
<p>AAA</p>
JQuery代码
$ (“<b>cc</b>”).After(“p”);
结果
<p>AAA</p><b>cc</b>
Before()
在每个匹配的元素之前插入内容
HTML代码
<p>AAA</p>
JQuery代码
$(“p”). Before (“<b>cc</b>”);
结果
<b>cc</b><p>AAA</p>
insertBefore()
和Before()相反
HTML代码
<p>AAA</p>
JQuery代码
$ (“<b>cc</b>”). insertBefore (“p”);
结果
<b>cc</b><p>AAA</p>
好了,不要斋看,自己动手试试吧:)
4.删除元素节点
由于我们需要经常动态去改变DOM元素,因此Jquery提供了两种删除节点的方法,即remove()和empty();
4.1 remove()方法
$("p").remove();// 我们可以获取到要删除的元素,然后调用remove()方法 $("ul li:eq(0)").remove().appendTo("ul");// 删除ul下面的第一个li标记,然后再把删除的li标记重新加到ul里面,remove()方法返回删除元素的引用,这时你可以继续使用 $("ul li").remove("li[title!=ABC]");//remove可以接受通过参数来选择性的删除符合条件的元素;
4.2 empty()方法
严格来讲,empty()方法并不是删除元素,而是清空
例:
HTML代码:
<ul> <li title="AAA">AAA</li> </ul>
JQuery代码:
复制代码 代码如下:$("ul li:eq(0)").empty();
结果
<ul> <li title="AAA"></li> </ul>
记住,只会清空内容,不会请空属性;
更多关于jQuery操作DOM元素相关内容感兴趣的读者可查看本站专题:《jQuery操作DOM节点方法总结》
希望本文所述对大家jQuery程序设计有所帮助。
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?
更新日志
- 陈随意2008-爱的总铺师[美华][WAV+CUE]
- 裘德《一棵树所创造的》[320K/MP3][56.21MB]
- 裘德《一棵树所创造的》[24bit 48kHz][FLAC/分轨][355.1MB]
- 卓依娜姆《美人谋 网剧影视原声带》[320K/MP3][48.29MB]
- 张星特.2024-流绪呢喃【中视鸣达】【FLAC分轨】
- 邓紫棋.2010-MYSECRET【蜂鸟音乐】【WAV+CUE】
- 江惠仪.2011-感謝您【禾广娱乐】【FLAC分轨】
- 韩红2005-精选[首版][WAV+CUE]
- 张敬轩.2004-A.M/P.M【几何文化】【WAV+CUE】
- 范文芳1999-真心话电影原声带[HYPE][WAV+CUE]
- 袁培华.1990-我写不出一首情歌给我最爱的你【可登】【WAV+CUE】
- 群星.2007-歌林10年流行岁月12CD【歌林】【WAV+CUE】
- 软硬天师.2006-LONG.TIME.NO.SEE【金牌大风】【WAV+CUE】
- 卓依娜姆《美人谋 网剧影视原声带》[FLAC/分轨][162.27MB]
- 国风大师纯音系列《蒋倩 :古筝演奏家》1CD[MP3][160.7MB]