jquery各種選擇器的使用網上已經科普很多了,這裡主要從性能上討論選擇器。
選擇器的性能主要從jquery源碼與javascript核心方法結合與否及遍歷復雜度考慮。
首先一點,能夠預見高性能的方法是能夠直接采用javascript本地方法的選擇器。比如$("#id")、$("div")都有本地方法與之對應:document.getElementById()、document.getElementByTagName()。而$(".class")、$("[attribute=value]")、$(":hidden")此類選擇器都沒有本地方法實現,大多使用DOM搜索方式達到效果,所以從性能上考慮,後面這些方法是比較差的。
總體建議是:盡量使用ID選擇器、盡量給選擇器指定上下文。的建議是,先使用ID選擇器選定父元素,再根據標簽選擇器選擇標簽。有點類似css中先使用class再使用層級選擇器的方法
jquery構造的多種選擇器,方便了使用,使用時需注意性能問題