亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

detach()和remove()的區別

var p = $("p:first").remove();

p.css('color','red').text('p1通過remove處理后,點擊該元素,事件丟失')

$("body").append(p);


以上代碼,p首先被移除掉了,自身元素p標簽也應該將移除了,可是為什么p又重新設置樣式及內容的時候卻還是會是p標簽呢


正在回答

3 回答

在一個函數里,定義一個臨時變量,remove():臨時變量清空/detach():臨時變量內的值還在。當然函數執行完畢以后,所有的這些,都釋放了,消逝在風雨中。

0 回復 有任何疑惑可以回復我~

var p = $("p:first").remove();

1:console.log(p.html())

2:console.log(p)

p.css('color','red').text('p1通過remove處理后,點擊該元素,事件丟失')

$("body").append(p);



1:元素p1,同時綁定點擊事件

2:[p, prevObject: jQuery.fn.jQuery.init[1], context: document, selector: "p:first"]


0 回復 有任何疑惑可以回復我~
#1

qq_悠悠我心_4

這個可不可以這么理解,var p = $("p:first").remove();雖然remove掉了<p>節點,只是把<p>從文檔中清楚了,但是還可以被其他的使用,要不alert(p.html())怎么還會alert出(元素p1,同時綁定點擊事件)呢?這點不懂,求指教!謝謝
2016-07-17 回復 有任何疑惑可以回復我~
#2

qq_悠悠我心_4 回復 qq_悠悠我心_4

從DOM中刪除所有匹配的元素。 這個方法不會把匹配的元素從jQuery對象中刪除,因而可以在將來再使用這些匹配的元素。但除了這個元素本身得以保留之外,其他的比如綁定的事件,附加的數據等都會被移除。
2016-07-17 回復 有任何疑惑可以回復我~

難道$("p:first")當做為參數了么?

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

detach()和remove()的區別

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號