0
我有一張大桌子,需要在其上設置CSS類。 因此,我將表克隆到一個documentFragment,以防止瀏覽器重新觸摸每個觸摸的DOM屬性等。問題是,我設置大部分是$ .data,並且在表TD中附加了$ .live事件。 所以問題是,我如何保存新表的$ .data新表?createDocumentFragment和jQuery
我有一張大桌子,需要在其上設置CSS類。 因此,我將表克隆到一個documentFragment,以防止瀏覽器重新觸摸每個觸摸的DOM屬性等。問題是,我設置大部分是$ .data,並且在表TD中附加了$ .live事件。 所以問題是,我如何保存新表的$ .data新表?createDocumentFragment和jQuery
如何在進行更改時使表暫時不可見(例如,display: none
),然後在完成更改後再將其放回原處?只有兩次迴流,你沒有克隆開銷。
雖然它在理論上是可以通過使用DOM cloneNode
而不是clone
創建表元素的完整副本,保持該jQuery使用來識別節點魔術expando屬性來欺騙jQuery的,這似乎很醜陋,脆弱的我。
是的,我走了,我可以暫時保存並重新申請數據: var oData = $ .cache [$。data($ BeforeClone [0])];; 並插入克隆的處理後的表: $ .cache [$。data($ AfterClone [0])] = oData; 這樣做。但問題是,我不得不刷新數據中仍舊引用舊錶的jQuery對象。 我想我會給你的解決方案一個嘗試。 – abp 2009-09-25 12:25:21
處理速度更快,並且我不必打擾數據,隱藏並再次顯示錶格。所以我會去解決這個問題。謝謝 :) – abp 2009-09-25 12:53:38