我在DOM中有一些元素,如果發生不同的事件,我需要顯示和隱藏它們。最好使用.detach()
,然後再使用.append()
或.hide()
,然後使用.show()
。元素有事件附加到他們,我使用jQuery .on()
的事件。從單個元素到少於10個元素的元素數量變化不大。jQuery .detach()vs hide/show
哪個更好用?
另外,如果頁面加載時不需要某個元素,但是稍後需要它時應該將其創建爲隱藏或在需要時創建它?
我在DOM中有一些元素,如果發生不同的事件,我需要顯示和隱藏它們。最好使用.detach()
,然後再使用.append()
或.hide()
,然後使用.show()
。元素有事件附加到他們,我使用jQuery .on()
的事件。從單個元素到少於10個元素的元素數量變化不大。jQuery .detach()vs hide/show
哪個更好用?
另外,如果頁面加載時不需要某個元素,但是稍後需要它時應該將其創建爲隱藏或在需要時創建它?
jQuery的.detach()
和.append()
函數分別移除和添加元素到DOM。
.show()
and .hide()
只需添加CSS規則display: none
。
簡短的回答是,如果你是顯示/隱藏元素經常,最好使用.show()
和.hide()
,因爲這個動作更迅速地發生。
如果您需要較大的元素不經常出現,最好使用.detach()
和.append()
,因爲如果您的DOM太大,一旦達到內存限制,您的網頁可能會變慢。
頁面有幾個元素不是很大。所以我可以使用'.show()'和'.hide()'對嗎?我的另一個問題呢? –
@rexhin無論最初是顯示還是最初隱藏,都應用相同的邏輯。使用的小東西經常使用'.show()'和'.hide()'。大多數情況下很少使用'.append()'和'.detach()'。你選擇哪個小用品並不重要。 – jperezov
使用show/hide。 detach()會創建另一個jquery對象來存放元素html。 – DinoMyte
謝謝。我的另一個問題呢? (查看我更新的問題。)@DinoMyte –
隱藏一個元素。由於動態注入一個會影響性能,最終會佔用標記空間。 – DinoMyte