jquery DOM 建立、插入、刪除

來源:互聯網
上載者:User

標籤:cti   rip   selector   png   regular   java   image   logs   nbsp   

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方法

  • 該節點與該節點所包含的所有後代節點將同時被刪除
  • 提供傳遞一個篩選的運算式,刪除指定合集中的元素

 

jquery DOM 建立、插入、刪除

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.