標籤:jquery 選取器 sizzle
什麼是jQuery選取器?
jQuery選取器通俗來講就是一個擷取html元素的工具。比如,$("p") 選取 <p> 元素,$("p")是jQuery的選取器的寫法,這麼寫就可以擷取(選取)html裡的<p>元素。
jQuery選取器包括元素選取器、屬性選取器、CSS選取器。(個人感覺這個分類比較扯淡)
注意:屬性選取器的意思並不是選擇屬性,而是根據屬性選擇元素。
詳細參考:http://www.w3school.com.cn/jquery/jquery_selectors.asp
什麼叫html元素?什麼是屬性?
html代碼裡的開始標籤+內容+結束標籤就構成一個元素,英文是element。
<p>這是一個標籤,</p>這也是一個標籤,英文是tag。
<p>XXX</p>這就是一個元素。
特殊的<br/>這也是一個標籤。
屬性估計大家都清楚,比如標籤<body bgcolor="red">中,bgcolor="red"就是屬性。
也就是說,屬性是在標籤中的;而在不混淆的情況下,我們經常把元素稱作為標籤(部分人包括我經常這樣),也不是一個很大的問題。
不用jQuery選取器的話是如何?該功能的?
如果不用jQeury,簡單的元素選取器的一般原生js寫法是:getElementById()、getElementByClassName()等函數擷取元素。在這種情況下,$的作用僅僅是簡化了代碼的書寫方法。
當然,這隻是最簡單的情況下。$寫法的在這種情況下其實也是調用getElementById(),但複雜情況則通過jQuery選取器的複雜實現。
jQuery選取器是如何?的?
w3c上是這麼說:jQuery 使用 CSS 選取器來選取 HTML 元素。我個人又一次感覺更扯淡。所以還是建議怎麼使用可以看w3c,原理的東西還是看別的。
可以參考這篇文章:
jQuery選取器引擎和Sizzle介紹:http://blog.csdn.net/freshlover/article/details/10813657
Sizzle引擎--原理與實踐(一):http://www.cnblogs.com/xesam/archive/2012/02/15/2352466.html
什麼是sizzle?
sizzle是一個純js的CSS選取器引擎(A pure-JavaScript CSS selector engine)。最新版本是2.1.1(jquery-sizzle-2.1.1-jquery.2.1.2-11-gf8ef711.zip)。
官網是:http://sizzlejs.com/
它是jQuery官網的一部分。(jQuery官網一共有5部分:jQuery、jQueryUI、jQueryMobile、Sizzle、QUnit)但它是獨立的,雖然jQuery本身使用sizzle,但是你完全可以在不使用jQuery的情況下使用sizzle。
本文出處:http://blog.csdn.net/ouyida3/article/details/43915543
2015.2.23
理解jQuery選取器與Sizzle