江湖傳言,全世界大約有80~90%的網(wǎng)站直接或間接地使用了jQuery。鑒于它如此流行,又如此好用,所以每一個入門JavaScript的前端工程師都應該了解和學習它。
jQuery這么流行,肯定是因為它解決了一些很重要的問題。實際上,jQuery能幫我們干這些事情:
jQuery的理念“Write Less, Do More“,讓你寫更少的代碼,完成更多的工作!
jQuery版本
目前jQuery有1.x和2.x兩個主要版本,區(qū)別在于2.x移除了對古老的IE 6、7、8的支持,因此2.x的代碼更精簡。選擇哪個版本主要取決于你是否想支持IE 6~8。
從jQuery官網(wǎng)可以下載最新版本。jQuery只是一個jquery-xxx.js
文件,但你會看到有compressed(已壓縮)和uncompressed(未壓縮)兩種版本,使用時完全一樣,但如果你想深入研究jQuery源碼,那就用uncompressed版本。
使用jQuery
使用jQuery只需要在頁面的<head>引入jQuery文件即可:
<html><head> <script src="http://code.jquery.com/jquery-1.11.3.min.js"></script> ...</head><body> ...</body></html>
好消息是,當你在學習這個教程時,由于網(wǎng)站本身已經(jīng)引用了jQuery,所以你可以直接使用:
'use strict';alert('jQuery版本:' + $.fn.jquery);
$符號
$是著名的jQuery符號。實際上,jQuery把所有功能全部封裝在一個全局變量jQuery中,而$也是一個合法的變量名,它是變量jQuery的別名:
window.jQuery; // jQuery(selector, context)window.$; // jQuery(selector, context)$ === jQuery; // truetypeof($); // 'function'
$本質(zhì)上就是一個函數(shù),但是函數(shù)也是對象,于是$除了可以直接調(diào)用外,也可以有很多其他屬性。
注意,你看到的$函數(shù)名可能不是jQuery(selector, context)
,因為很多JavaScript壓縮工具可以對函數(shù)名和參數(shù)改名,所以壓縮過的jQuery源碼$函數(shù)可能變成a(b, c)。
絕大多數(shù)時候,我們都直接用$(因為寫起來更簡單嘛)。但是,如果$這個變量不幸地被占用了,而且還不能改,那我們就只能讓jQuery把$變量交出來,然后就只能使用jQuery這個變量:
$; // jQuery(selector, context)jQuery.noConflict();$; // undefinedjQuery; // jQuery(selector, context)
這種黑魔法的原理是jQuery在占用$之前,先在內(nèi)部保存了原來的$,調(diào)用jQuery.noConflict()
時會把原來保存的變量還原。
新聞熱點
疑難解答