欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

老生常談jquery中detach()和remove()的區(qū)別

 更新時間:2017年03月02日 08:56:54   投稿:jingxian  
下面小編就為大家?guī)硪黄仙U刯query中detach()和remove()的區(qū)別。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

JQuery是一個很大強的工具庫,在工作中開發(fā)中,可是有些方法還是因為不常用到,或是沒有注意到而被我們而忽略。

remove()和detach()可能就是其中的一個,可能remove()我們用得比較多,而detach()就可能會很少了

通過一張對比表來解釋2個方法之間的不同

方法名

參數(shù)

事件及數(shù)據(jù)是否也被移除

元素自身是否被移除

remove

支持選擇器表達

是(無參數(shù)時),有參數(shù)時要根據(jù)參數(shù)所涉及的范圍

detach

參數(shù)同remove

情況同remove

remove:移除節(jié)點

- 無參數(shù),移除自身整個節(jié)點以及該節(jié)點的內(nèi)部的所有節(jié)點,包括節(jié)點上事件與數(shù)據(jù)

- 有參數(shù),移除篩選出的節(jié)點以及該節(jié)點的內(nèi)部的所有節(jié)點,包括節(jié)點上事件與數(shù)據(jù)

detach:移除節(jié)點

- 移除的處理與remove一致

- 與remove()不同的是,所有綁定的事件、附加的數(shù)據(jù)等都會保留下來

- 例如:$("p").detach()這一句會移除對象,僅僅是顯示效果沒有了。但是內(nèi)存中還是存在的。當(dāng)你append之后,又重新回到了文檔流中。就又顯示出來了。

eq:

<html>

<head>
  <meta http-equiv="Content-type" content="text/html; charset=utf-8"/>
  <style type="text/css">
    p {
      border: 1px solid red;
    }
  </style>
  <script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script>
</head>

<body>
<h3>給頁面2個p元素節(jié)點綁定點擊事件,點擊后彈出自己本身的節(jié)點內(nèi)容</h3>

<p>元素p1,同時綁定點擊事件</p>

<p>元素p2,同時綁定點擊事件</p>

<h3>通過點擊2個按鈕后觀察方法處理的區(qū)別</h3>
<button>點擊通過remove處理元素p1</button>
<button>點擊通過detach處理元素p2</button>
</body>
<script type="text/javascript">
  //給頁面上2個p元素都綁定時間 
  $('p').click(function (e) {
    alert(e.target.innerHTML)
  })

  $("button:first").click(function () {
    var p = $("p:first").remove();
    p.css('color', 'red').html('p1通過remove處理后,點擊該元素,事件丟失')
    $("body").append(p);
  });

  $("button:last").click(function () {
    var p = $("p:first").detach();
    p.css('color', 'blue').text('p2通過detach處理后,點擊該元素事件存在')
    $("body").append(p);
  });
</script>
</script>

</html >

以上這篇老生常談jquery中detach()和remove()的區(qū)別就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論