jquery DOM 创建、插入、删除

1.创建元素节点:

$("<div></div>")

2.创建文本节点,与创建元素节点类似,可以直接把文本内容一并描述

$("<div>我是文本节点</div>")

3.创建属性节点:与创建元素节点同样的方式

$("<div id=‘test‘ class=‘aaron‘>我是文本节点</div>")
$("<div class=‘right‘><div class=‘aaron‘>动态创建DIV元素节点</div></div>") //一句话创建元素、文本、属性节点

jquery较简洁,而如果用javascript,则代码比较多

jquery:

    var $body = $(‘body‘);
    $body.on(‘click‘, function() {
    //通过jQuery生成div元素节点
      var div = $("<div class=‘right‘><div class=‘aaron‘>动态创建DIV元素节点</div></div>")
      $body.append(div)
    })


  javascript:

  var body = document.querySelector(‘body‘);

    // document.addEventListener(‘click‘,function(){

    //  //创建2个div元素
    //  var rightdiv = document.createElement(‘div‘)
    //  var rightaaron = document.createElement("div");

    //  //给2个div设置不同的属性
    //  rightdiv.setAttribute(‘class‘, ‘right‘)
    //  rightaaron.className = ‘aaron‘
    //  rightaaron.innerHTML = "动态创建DIV元素节点";

    //  //2个div合并成包含关系
    //  rightdiv.appendChild(rightaaron)

    //  //绘制到页面body
    //  body.appendChild(rightdiv)

    // },false)

二、DOM内部插入append() 和 appendTo()

 .append()和.appendTo()两种方法功能相同,主要的不同是语法——内容和目标的位置不同

append()  前面是被插入的对象,后面是要在对象内插入的元素内容 body.append(div)
appendTo()前面是要插入的元素内容,而后面是被插入的对象  div.appendTo(body)
$(".content").append(‘<div class="append">通过append方法添加的元素</div>‘)

$(‘<div class="appendTo">通过appendTo方法添加的元素</div>‘).appendTo($(".content"))

三、DOM外部插入after() 与 before()

  • before与after都是用来对相对选中元素外部增加相邻的兄弟节点
  • 2个方法都是都可以接收HTML字符串,DOM 元素,元素数组,或者jQuery对象,用来插入到集合中每个匹配元素的前面或者后面
  • 2个方法都支持多个参数传递after(div1,div2,....)

注意点:

  • after向元素的后边添加html代码,如果元素后面有元素了,那将后面的元素后移,然后将html代码插入
  • before向元素的前边添加html代码,如果元素前面有元素了,那将前面的元素前移,然后将html代码插入
<div>
    <p id="btn">点击在前插入</p>
</div>
$("#btn").on("click", function(){
   $("#btn").before("<h1> 我是before</h1>")
})

四、DOM内部插入 prepend() 与 prependTo()

跟append()与appendTo() 方法一样

区别是  append()与appendTo() 默认加到子元素的后面, 即排到子元素队伍后面;而 prepend() 与 prependTo() 是排在队伍前面

  • append()向每个匹配的元素内部追加内容
  • prepend()向每个匹配的元素内部前置内容
  • appendTo()把所有匹配的元素追加到另一个指定元素的集合中
  • prependTo()把所有匹配的元素前置到另一个指定的元素集合中

五、DOM外部插入 insertAfter  insertBefore

与 before() , after() 方法类似

$(‘<p style="color:red">测试insertBefore方法增加</p>‘, ‘<p style="color:red">多参数</p>‘).insertBefore($(".test1")) //插入到test1 前,两者是兄弟关系
$(‘<p style="color:red">测试insertAfter方法增加</p>‘, ‘<p style="color:red">多参数</p>‘).insertAfter($(".test2"))// 插入到test2 后,兄弟关系

六、DOM节点删除 empty()

empty 顾名思义,清空方法,但是与删除又有点不一样,因为它只移除了 指定元素中的所有子节点。

<div id="test">
      <p>p元素1</p>
      <p>p元素2</p>
</div>
$("#test").empty(); // 只剩下<div id="test"></div>

七、删除  remove()

<div class="test1">
        <p>p元素1</p>
        <p>p元素2</p>
    </div>

 $(".test1").remove(); //删除整个 class=test1的div节点
 $("p").remove(":contains(‘2‘)"); // 删除p元素集合中中文本包含数字2 的p元素

empty方法

  • 严格地讲,empty()方法并不是删除节点,而是清空节点,它能清空元素中的所有后代节点
  • empty不能删除自己本身这个节点

remove方法

  • 该节点与该节点所包含的所有后代节点将同时被删除
  • 提供传递一个筛选的表达式,删除指定合集中的元素
时间: 2024-08-08 01:27:21

jquery DOM 创建、插入、删除的相关文章

JavaScript之jQuery-3 jQuery操作DOM(查询、样式操作、遍历节点、创建插入删除、替换、复制)

一.jQuery操作DOM - 查询 html操作 - html(): 读取或修改节点的HTML内容,类似于JavaScript中的innerHTML属性 文本操作 - text(): 读取或修改节点的文本内容,类似于JavaScript中的textContent属性 值操作 - val(): 读取或修改节点的value属性值,类似于 JavaScript 中的value值 属性操作 - attr(): 读取或者修改节点的属性 - removeAttr(): 删除节点的属性 二.jQuery操作

DOM创建和删除节点、HTML DOM常用对象[转]

创建和删除节点:——核心DOM   1. 创建单个元素节点:3步:      1. 创建空元素节点对象:         var elem=document.createElement("标签名");        比如: var a=document.createElement("a");          html: <a></a>      2. 设置新元素的关键属性:        比如: a.href="http://tm

JQuery动态创建、删除DOM元素

动态创建Dom节点 1.使用$(html字符串)来创建Dom节点 2.append方法用来在元素的末尾追加元素 3.prepend,在元素的开始添加元素. prependTo.after,在元素之后添加元素(添加兄弟).before:在元素之前添加元素(添加兄弟). 删除节点 (1)remove()删除选择的节点 (2)empty()是将节点清空,清除节点的innerHTML,节点还在 动态创建Dom节点示例: 1.使用$(html字符串)来创建Dom节点,并且返回一个jQuery对象,然后调用

jQuery DOM操作之删除节点

下面示例可能用到如下HTML代码: <ul>   <li title="t1">苹果</li>   <li>香蕉</li>   <li>橘子</li>   <li>葡萄</li>   <li>草莓</li> </ul> 1.remove()方法: 作用:从DOM中删除所有匹配的元素,传入的参数用于根据jQuery表达式来筛选元素. 例如,删除上

DOM创建和删除节点

一.创建节点 3步 1.创建空元素对象: var newElem=document.createElement("标签名"); 例如:var a=document.createElement("a");//<a></a> 2.设置必要属性 newElem.属性名="值"; newElem.innerHTML="文本"; 例如:a.href="http://tmooc.cn";a.in

链表 创建 插入 删除 查找 合并

最近学习了一下单链表的操作,将代码保存如下,供以后查看. 链表创建: 1.先建立一个不含数据的头指针*head,头指针的链接域为NULL. 2.声明一个用于暂存新申请空间的指针*pc,一个用于保存创建的链表的指针*r,令*r指向*head. 3.在循环中,为指针*pc申请空间,并给数据域赋值,head->next = pc, pc->next = NULL, head = pc. #define _CRT_SECURE_NO_DEPRECATE /*取消scanf,printf不安全之类的错误

[PHP] 数据结构-链表创建-插入-删除-查找的PHP实现

链表获取元素1.声明结点p指向链表第一个结点,j初始化1开始2.j<i,p指向下一结点,因为此时p是指向的p的next,因此不需要等于3.如果到末尾了,p还为null,就是没有查找到 插入元素1.插入元素和查找类似,找到位置后2.生成新的结点s, s->next=p->next p->next=s; 删除元素1.删除元素,找到位置后2.绕过一下,q=p->next p->next=q->next; <?php class Node{ public $data

(十七)jquery动态创建,删除 table 行

<style> html{ background:none;} table{ width:100%; border:1px solid #CCC; border-top:none; border-left:none; } table td, table th{ text-align:left; border-top:1px solid #cccccc; border-left:1px solid #cccccc; padding:10px; height:50px; font-size:16p

JQuery DOM 插入节点

//append() //向每个匹配的元素内部追加内容: HTML代码: <p>我想说:</p> jQuery代码: $("p").append("<b>你好</b>"); 结果: <p>我想说:<b>你好</b></p> //appendTo() //将所有匹配的元素追加到指定的元素中.实际上,使用该方法是颠倒了常规的$(A).append(B)的操作,即不是将B追加到