1、輕量級(jí)JQuery非常輕巧,采用Dean Edwards編寫的Packer壓縮后,大小不到30KB,如果使用Min版并且在服務(wù)器端啟用Gzip壓縮后,大小只有18KB。
gzip: 每天一個(gè)linux命令
gzip 減少文件大小有兩個(gè)明顯的好處
一是可以減少存儲(chǔ)空間,
二是通過網(wǎng)絡(luò)傳輸文件時(shí),可以減少傳輸?shù)臅r(shí)間。
gzip是在Linux系統(tǒng)中經(jīng)常使用的一個(gè)對(duì)文件進(jìn)行壓縮和解壓縮的命令,既方便又好用。
gzip不僅可以用來(lái)壓縮大的、較少使用的文件以節(jié)省磁盤空間,還可以和tar命令一起構(gòu)成Linux操作系統(tǒng)中比較流行的壓縮文件格式。
據(jù)統(tǒng)計(jì),gzip命令對(duì)文本文件有60%~70%的壓縮率。
2、強(qiáng)大的選擇器JQuery允許開發(fā)者使用從CSS1到CSS3幾乎所有的選擇器,以及JQuery獨(dú)創(chuàng)的高級(jí)而且復(fù)雜的選擇器,另外還可以加入插件使其支持XPath選擇器,甚至開發(fā)者可以編寫屬于自己的選擇器。由于JQuery支持選擇器這一特性,因此有一定CSS經(jīng)驗(yàn)的開發(fā)人員可以很容易的切入到JQuery的學(xué)習(xí)中來(lái)。
XPath:
XPath 是一門在 XML 文檔中查找信息的語(yǔ)言。XPath 可用來(lái)在 XML 文檔中對(duì)元素和屬性進(jìn)行遍歷。
XPath 是 W3C XSLT 標(biāo)準(zhǔn)的主要元素,并且 XQuery 和 XPointer 都構(gòu)建于 XPath 表達(dá)之上。
因此,對(duì) XPath 的理解是很多高級(jí) XML 應(yīng)用的基礎(chǔ)。
3、出色的DOM操作的封裝
JQuery封裝了大量常用的DOM操作,使開發(fā)者在編寫DOM操作相關(guān)程序的時(shí)候能夠得心應(yīng)手。JQuery輕松地完成各種原本非常復(fù)雜的操作,讓JavaScript新手也能寫出出色的程序。
4、可靠的事件處理機(jī)制
JQuery的事件處理機(jī)制吸收了JavaScript專家Dean Edwards編寫的事件處理函數(shù)的精華,是的JQuery在處理事件綁定的時(shí)候相當(dāng)可靠。在預(yù)留退路、循序漸進(jìn)以及非入侵式編程思想方面,JQuery也做得非常不錯(cuò)。
5、完善的AjaxJQuery
將所有的Ajax操作封裝到一個(gè)函數(shù)$.ajax()里,使得開發(fā)者處理Ajax的時(shí)候能夠?qū)P奶幚順I(yè)務(wù)邏輯而無(wú)需關(guān)心復(fù)雜的瀏覽器兼容性和XMLHttpRequest對(duì)象的創(chuàng)建和使用的問題。
6、不污染頂級(jí)變量
JQuery只建立一個(gè)名為JQuery的對(duì)象,其所有的函數(shù)方法都在這個(gè)對(duì)象之下。其別名$也可以隨時(shí)交流控制權(quán),絕對(duì)不會(huì)污染其他的對(duì)象。該特性是JQuery可以與其他JavaScript庫(kù)共存,在項(xiàng)目中放心地引用而不需要考慮到后期的沖突。
7、出色的瀏覽器兼容性
作為一個(gè)流行的JavaScript庫(kù),瀏覽器的兼容性是必須具備的條件之一。JQuery能夠在IE6.0+,FF 2+,Safari2.+和Opera9.0+下正常運(yùn)行。JQuery同時(shí)修復(fù)了一些瀏覽器之間的的差異,使開發(fā)者不必在開展項(xiàng)目前建立瀏覽器兼容庫(kù)。
8、鏈?zhǔn)讲僮鞣绞?br>
JQuery中最有特色的莫過于它的鏈?zhǔn)讲僮鞣绞健磳?duì)發(fā)生在同一個(gè)JQuery對(duì)象上的一組動(dòng)作,可以直接接連寫無(wú)需要重復(fù)獲取對(duì)象。這一特點(diǎn)使得JQuery的代碼無(wú)比優(yōu)雅。
9.隱式迭代
當(dāng)用JQuery找到帶有“.myClass”類的全部元素,然后隱藏他們時(shí)。無(wú)需循環(huán)遍歷每一個(gè)返回的元素。相反,JQuery里的方法都被設(shè)計(jì)成自動(dòng)操作的對(duì)象集合,而不是單獨(dú)的對(duì)象,這使得大量的循環(huán)結(jié)構(gòu)變得不再必要,從而大幅度地減少代碼量。
10、行為層與結(jié)構(gòu)層的分離
開發(fā)者可以使用選擇器選中元素,然后直接給元素添加事件。這種將行為層與結(jié)構(gòu)層完全分離的思想,可以使JQuery開發(fā)人員和HTML或其他頁(yè)面開發(fā)人員各司其職,擺脫過去開發(fā)沖突或個(gè)人單干的開發(fā)模式。同時(shí),后期維護(hù)也非常方便,不需要在HTML代碼中尋找某些函數(shù)和重復(fù)修改HTML代碼。
11、豐富的插件支持
JQuery的易擴(kuò)展性,吸引了來(lái)自全球開發(fā)者來(lái)編寫JQuery的擴(kuò)展插件。目前已經(jīng)有超過幾百種官方插件支持,而且還不斷有新插件面試。12、完善的文檔
JQuery的文檔非常豐富,現(xiàn)階段多位英文文檔,中文文檔相對(duì)較少。很多熱愛JQuery的團(tuán)隊(duì)都在努力完善JQuery中文文檔,例如JQuery的中文API。
13、開源
JQuery是一個(gè)開源的產(chǎn)品,任何人都可以自由地使用并提出修改意見。