當我在jQuery中查詢帶有id的元素時,它會緩存還是會通過DOM迭代?當我們用ID(#)查詢時,jquery會緩存元素嗎?
-1
A
回答
2
通過ID查找命中快速瀏覽器字典(我懷疑你的緩存),每個ID有一個條目。
它是超快的,並且DOM沒有迭代。
邊注:查找由類使用在現代瀏覽器類似的方法,但每類名稱的多個元素和幾乎一樣快的ID查找時下。
1
不,它不會緩存。
jQuery將大致這樣工作:
- 當你火起來
$("#myid")
,它調用了一個全局jQuery
功能passes your query to a functionjQuery.fn.init
- 它matches your input with regexp
- 它發現你的查詢開始
#
和passes it to nativegetElementById
function
就是這樣。中間沒有緩存,因爲getElementById
呼叫已經超快。
+2
有什麼不對的StackOverflow半句錯過一個重要的一點。'getElementById'確實有一個背後的緩存(這是爲什麼呢是如此之快),所有現代瀏覽器緩存的ID和任何類的元素。 –
+0
當然,但依賴於底層瀏覽器的實現。我認爲根本問題是關於「我可以依靠的jQuery總是要求瀏覽器或它是否實現了自己的緩存「,所以這就是我回答:) – jehna1
相關問題
- 1. 使用JQuery查找和緩存元素
- 2. jQuery緩存元素
- 3. 在插入的運行時查詢數據:我們可以使用緩存嗎?
- 4. Dojo相當於jQuery的通過部分ID查找元素嗎?
- 5. 當我們從不想要它時,Flash會緩存JSON響應
- 6. 當我使用Junit時無法通過ID查找元素
- 7. 爲什麼當我檢查它們時,緩存控制標題值會反向?
- 8. jquery當元素存儲在變量中時如何到達元素ID
- 9. jQuery檢查元素ID
- 10. 當查詢表時BigQuery緩存會提供不同的結果?
- 11. 當我們在jQuery中綁定一個元素時會發生什麼?
- 12. 懸停的Jquery(當我們徘徊的元素上方有一個元素時)
- 13. 當我們通過parent_id時,MySQL查詢獲取樹中的所有子元素
- 14. 使用jQuery來緩存DOM元素
- 15. 當元素不存在時jquery失敗
- 16. postgres緩存我的查詢?
- 17. 我們可以擁有2個元素的相同ID嗎?
- 18. 當存在不均勻元素時查詢XML
- 19. 查詢ARP緩存以獲取MAC ID
- 20. 當ID包含方括號時,通過ID查找DOM元素?
- 21. 我們可以使用「鏈接」屬性來查找元素嗎?
- 22. 緩存塊/視圖或面板中的元素會更好嗎?
- 23. 當我嘗試查找元素時,爲什麼會引發NullReferenceException?
- 24. 如何使用jQuery在父元素ID中查找元素?
- 25. 使用媒體查詢顯示元素時元素的相同ID
- 26. 當元素使用jquery加載時可能會發出警報嗎?
- 27. jQuery檢查元素存在
- 28. jQuery - 備份/緩存元素的事件?
- 29. jQuery中的緩存元素(Internet Explorer?)
- 30. jQuery/JavaScript緩存元素的效率?
你在說哪個緩存??? –
夥計們......放下了票。對於新手來說,這是一個合理的問題(如果沒有特別的代碼相關)。重要的是要知道如何在瀏覽器緩存查找:)關閉它,但請不要他們首先打不死:> –
@GoneCoding是的,但它是恕我直言,尤其是這無關的jQuery還不是很清楚的問題。雖然你的答案是偉大的:) –