-
jQuery 是什麼?可以吃嗎?
jQuery 是一組可以神奇地簡化 Javascript 程式寫法的 Open Source Library,由 John Resig 於 2006 發表。
透過 Selector、函數串接、元素陣列整批處理等巧妙的語言特色,加上對於 HTML 處理中常用的 Event、Attribute、CSS Style、元素新增/刪除都提供了簡便的寫法,能將原本要寫上數百行的 Javascript 程式簡化到幾行搞定,故深受許多 Javascript 開發者的歡迎。
-
為什麼 Javascript 老鳥看到 jQuery 這麼興奮? 她當真如此傾國傾城?
寫好 Javascript 從來不是件簡單事,從拼拼湊湊在自己的 IE 上運作正常,要提升到讓 Internet 四面八方湧來的 Firefox、Opera、Safar 都能跑得順暢,猶如登七星山到爬黑色奇萊的差別。
Javascript Framework 可以幫我們處理掉惱人的相容細節,讓我們用統一的方式就搞定大部分的主流瀏覽器,當未來有新的瀏覽器規格問市時,我們只要更新 Framework 版本即可。
同時 Framework 還會針對常用的功能,提供簡便的公用函數,用較簡單寫法取代原本繁瑣的程式。
而眾多 Javascript Framework 中,jQuery 算是最能實現 Do More With Less 精神的一個,跟其他 Framework 相比,完成同樣工作,所需要程式行數少得嚇人,因此特別吸引寫 Javascript 已經寫到手酸的老鳥。
-
jQuery 好學嗎?
說 jQuery 好學是騙人的,它一開始的學習曲線頗為陡峭。
Do More With Less 的先決條件是要先搞懂像魔法咒語一般的 CSS Selector,了解函數接接樂原理、以及一些 jQuery 慣用的簡潔 Javascript 語法,得花些心思才能上手,但我保證這個投資的報酬非常驚人。
在程式設計上有個很棒的比擬,Regular Expression,一點也不好學,但學會後,原本 200 行的程式碼只要兩行就可以搞定。
-
我不會寫 Javascript,jQuery 對我有用嗎?
微軟對 ASP.NET/ASP.NET AJAX 加了一些很奇妙的設計,利用 PostBack + Update Panel,就有開發者一行 Javascript 也沒寫過,單單用 C#/VB.NET 寫 Server-Side Event 就做出很棒很炫的 AJAX 效果。
不過,PostBack + Update Panel 的寫法常涉及大量 ViewState 資料的來回傳送,較為笨重。
而光靠現成的東西也不可能解決全部的問題,某些時候,自己動手寫幾行 Javascript 可以更有效率地滿足系統需求。
暗示了這麼久,你如果還是堅持不碰 Javascript... 這題的回答是: NO! jQuery 對你沒什麼用處。
-
我想學 jQuery,要怎麼開始?
對不會 Javascript 的人來說,jQuery 只是塊石頭。
所以學 jQuery之前,要先對 Javascript 有基本的認識,對 Javascript 愈熟,運用 jQuery 所產生的威力愈大。
Javascript 出來很久了,坊間可以找到很多書籍,不想花錢 Google 一下 "Javascript 教學" 也可以找到成千上萬的網頁。
但書籍的介紹可能會較有系統一些。
要學習 jQuery,我強力推薦 http://visualjquery.com/!!
它很完整地彙緦了 jQuery 的大小函數、語法,最棒的是它的範例寫得非常用心,一看就明白。
-
Selector 是什麼?為什麼一堆人對它津津樂道?
"我想要在將表格中的單數列加上淺藍色背景"
"我希望這五個輸入欄位可以用一個按鈕切換顯示或隱藏"
這些需求在傳統做法中,都要透過事前指定元素 ID,或動態掃過全部的元素集合的方式處理。
jQuery 實現了 CSS 規格的 CSS Selector 概念,一行解決原本數十行才能搞定的效果。
加上應用廣泛,所有開始使用 jQuery 的人一定會被它電到,從此愛不釋手。
除了前述 Visual jQuery 可以找到範例外,我還找到另一篇完整的中文整理。
-
你老是在講的接接樂是啥?
利用 Selector 選出來的結果常是一堆網頁元素的集合(陣列),此時只要在後方加上處理函數。
例如: 修改 CSS 格式、加掛 Click 事件,則可以直接對陣列中的每一個元素都做一次處理。
最棒的是處理函數做完後會再傳回原本的陣列,所以可以馬上在後面加上第二個處理函數,再對同陣列的所有元素做其他處理,寫起來超省 Code。
例如: $("..選擇100個元素..").css(設定CSS格式).click(加上Click事件).append(在其中插入其他物件)。
-
jQuery 除了讓老鳥狂寫 Javascript 過過癮,還有什麼好康?
並不是什麼東西都要自己用 Javascript 寫才能發揮 jQuery 的價值,jQuery 是很受歡迎的 Javascript Framework,現在已經有很多善心人士寫好的好用插件 (Plug-In)。
例如: 照片展示、動態選單、自動完成、表格排序... 官方網站上有完整的整理,要自己動手做之前,不妨先找找有無現成的插件,可以省下可觀的時間。