jQuery动态添加/删除元素及内容

添加元素/内容:

通过 jQuery ,可以很容易地添加新元素/内容。

添加新的 HTML 内容,四种方法:可根据上面的图片来区分四种方法插入元素的位置。

append() 方法:

被选元素的结尾插入内容(被选元素内)。

实例:

$("p").append("Some appended text.");

jQuery prepend() 方法:

被选元素的开头插入内容(被选元素内)。

实例:

$("p").prepend("Some prepended text.");

append()prepend() 方法能够通过参数接收无限数量的新元素。

可以通过 jQuery 来生成文本/HTML(就像上面的例子那样),或者通过 JavaScript 代码和 DOM 元素。

实例:

function appendText() {
    var txt1="<p>Text.</p>"; // 以 HTML 创建新元素
    var txt2=$("<p></p>").text("Text."); // 以 jQuery 创建新元素
    var txt3=document.createElement("p"); // 以 DOM 创建新元素
    txt3.innerHTML="Text.";
    $("p").append(txt1,txt2,txt3); // 追加新元素
}

jQuery after() 方法:

被选元素之后插入内容(被选元素外)。

jQuery before() 方法:

被选元素之前插入内容(被选元素外)。

实例:

$("img").after("Some text after");
$("img").before("Some text before");

after()before() 方法同样能够通过参数接收无限数量的新元素。可以通过 text/HTML、jQuery 或者 JavaScript/DOM 来创建新元素。

实例:

function afterText() {
    var txt1="<b>I </b>"; // 以 HTML 创建新元素
    var txt2=$("<i></i>").text("love"); // 通过 jQuery 创建新元素
    var txt3=document.createElement("big"); // 通过 DOM 创建新元素
    txt3.innerHTML="jQuery!";
    $("img").after(txt1,txt2,txt3); // 在 img 之后插入新元素
}

删除元素/内容:

通过 jQuery ,可以很容易地删除已有的 HTML 元素。

删除元素/内容,两种方法:

jQuery remove() 方法:

删除被选元素及其子元素。

实例:

$("#div").remove();

jQuery empty() 方法:

删除被选元素的子元素。

实例:

$("#div").empty();

过滤被删除的元素:

jQuery remove() 方法也可接受一个参数,允许您对被删元素进行过滤。

该参数可以是任何 jQuery 选择器的语法。

下面的例子删除 class="italic" 的所有 <p> 元素:

实例:

$("p").remove(".italic");

拓展:

删除子元素:

方法一:

$("div span:gt(0)").remove();

gt 是大于的意思,这里 0 意思是删除所有子元素,1就是删除第2个以后的子元素。

方法二:

$(object).children(selector).remove();

删除 object 元素下满足 selector 选择器的子元素,不填写则默认删除所有子元素。

示例:

$("div").children("li:first-child").remove();  // 删除div下的第一个li子元素

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏CU技术社区

指南:使用Keras和TensorFlow探索数据增强

数据扩充使模型对较小的变化更鲁棒,因此可以防止模型过度拟合。将扩充后的数据存储在内存中既不实际也不高效,这就是Keras的Image Data Generato...

13220
来自专栏cwl_Java

浅谈产品体验优化

6720
来自专栏橙子探索测试

【Jenkins篇】Win环境安装部署Jenkins(一)

JDK1.7,或者JDK1.8: Jdk下载地址如下: Windows X86: jdk-8u171-windows-i586.exe Windows X64:...

12720
来自专栏cwl_Java

C++-面向对象(八)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

6420
来自专栏cwl_Java

3分钟快速阅读-《Effective Java》(二)

6410
来自专栏FECoding

探究 source map 在编译过程中的生成原理

source map 是开发时调试代码的利器之一。现代的构建工具如 webpack 早已对 source map 有了完备的支持,对照文档就能很容易在打包时顺手...

10230
来自专栏中科院渣渣博肆僧一枚

相对路径和绝对路径

根目录下有demo1和images/1.jpg,demo1下有index1.html文件和demo1.1文件夹。demo1.1下有index2.html和2.j...

6110
来自专栏cwl_Java

3分钟快速阅读-《Effective Java》(五)

10420
来自专栏CU技术社区

Docker 入门,看这篇就够了

关于Docker的发展史,本文就不做介绍,有兴趣的小伙伴们可以查看这篇文章,挺有意思的。http://www.oschina.net/news/57838/do...

8120
来自专栏Jerry的SAP技术分享

Step by Step to create orders by consuming SAP Commerce Cloud Restful API

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

7930

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励