你可能聽說過jQuery吃挑,它的名字起得很土船万,但卻是JavaScript世界中使用最廣泛的一個庫。
江湖傳言啸盏,全世界大概有80~90%的網(wǎng)站直接或間接地使用了jQuery重贺。鑒于它如此流行,又如此好用回懦。所以每一個入門JavaScript的前端工程師都應該了解和學習它气笙。
jQuery這么流行,肯定是因為它解決了一些很重要的問題怯晕。實際上潜圃,jQuery能幫我們干這些事情:
- 消除瀏覽器差異:你不需要自己寫冗長的代碼來針對不同的瀏覽器來綁定事件,編寫AJAX等代碼舟茶;
- 簡潔的操作DOM的方法:寫
$('#test')
肯定比document.getElementById('test')
來的簡潔谭期; - 輕松實現(xiàn)動畫、修改CSS等各種操作吧凉。
jQuery的理念‘Write Less, Do More’隧出,讓你寫更少的代碼,完整更多的工作客燕!
<p></p>
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版本嗦玖。
<p></p>
使用jQuery
使用jQuery只需要在頁面的<head>
引入jQuery文件即可:
<html>
<head>
<script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
...
</head>
<body>
...
</body>
</html>
</br>
<p></p>
$符號
$
是著名的jQuery符號患雇。實際上,jQuery把所有功能全部封裝在一個全局變量jQuery中宇挫,而$也是一個合法的變量名苛吱,它是變量名jQuery的別名:
window.jQuery; // jQuery(selector, context)
window.$; // jQuery(selector, context)
$ === jQuery; // true
typeof($); // 'function'
$
本質上就是一個函數(shù),但是函數(shù)也是對象器瘪,于是$除了可以直接調用外翠储,也可以有很多其他屬性。
<u>注意橡疼,你看到的$
函數(shù)名可能不是jQuery(selector, context)援所,因為很多JavaScript壓縮工具可以對函數(shù)名和參數(shù)改名,所以壓縮過的jQuery源碼$函數(shù)都可能變成a(b, c)欣除。</u>
絕大多數(shù)時候住拭,我們都直接用$(因為寫起來更簡單),但是耻涛,如果$
這個變量不幸地被占用了废酷,而且還不能改,那我們就只能讓jQuery把$
變量交出來抹缕,然后就只能使用jQuery這個變量:
$; // jQuery(selector, context)
jQuery.noConflict();
$; // undefined
jQuery; // jQuery(selector, context)
這種黑魔法的原理是jQuery在占用$之前澈蟆,先在內部保存了原來的$,調用jQuery.noConflict()
時會把原來保存的變量還原卓研。