如果我們希望臨時刪除頁面上的節點,但是又不希望節點上的數據與事件丟失,并且能在下一個時間段讓這個刪除的節點顯示到頁面,這時候就可以使用detach方法來處理
detach從字面上就很容易理解。讓一個web元素托管。即從當前頁面中移除該元素,但保留這個元素的內存模型對象。
來看看jquery官方文檔的解釋:
這個方法不會把匹配的元素從jQuery對象中刪除,因而可以在將來再使用這些匹配的元素。與remove()不同的是,所有綁定的事件、附加的數據等都會保留下來。 $("div").detach()這一句會移除對象,僅僅是顯示效果沒有了。但是內存中還是存在的。當你append之后,又重新回到了文檔流中。就又顯示出來了。
當然這里要特別注意,detach方法是JQuery特有的,所以它只能處理通過JQuery的方法綁定的事件或者數據
參考右邊的代碼區域,通過 $("p").detach()把所有的P元素刪除后,再通過append把刪除的p元素放到頁面上,通過點擊文字,可以證明事件沒有丟失
請驗證,完成請求
由于請求次數過多,請先驗證,完成再次請求
打開微信掃碼自動綁定
綁定后可得到
使用 Ctrl+D 可將課程添加到書簽
舉報