老生常談jquery中detach()和remove()的區(qū)別
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)存中還是存在的。當你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)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
- PHP isset()與empty()的使用區(qū)別詳解
- jQuery刪除節(jié)點的三個方法即remove()detach()和empty()
- php empty,isset,is_null判斷比較(差異與異同)
- jQuery使用empty()方法刪除元素及其所有子元素的方法
- javascript Array.remove() 數(shù)組刪除
- jquery之empty()與remove()區(qū)別說明
- 淺談java Iterator.remove()方法的用法(詳解)
- jQuery remove()過濾被刪除的元素(推薦)
- 清空元素html("") innerHTML="" 與 empty()的區(qū)別和應(yīng)用(推薦)
相關(guān)文章
js/jquery獲取瀏覽器窗口可視區(qū)域高度和寬度以及滾動條高度實現(xiàn)代碼
在js使用過程中可能會根據(jù)要求獲取瀏覽器窗口的可視區(qū)域高度和寬度,滾動條高度,于是本人搜集整理下,拿出來和大家分享,希望可以幫助你們2012-12-12
jqueryMobile 動態(tài)添加元素,展示刷新視圖的實現(xiàn)方法
下面小編就為大家?guī)硪黄猨queryMobile 動態(tài)添加元素,展示刷新視圖的實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-05-05
jquery實現(xiàn)聯(lián)想詞搜索框和搜索結(jié)果分頁的示例
今天小編就為大家分享一篇jquery實現(xiàn)聯(lián)想詞搜索框和搜索結(jié)果分頁的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10

