剛初學js時,總會聽到關於框架的一些事情。等學完JQ後我才知道什麼是框架。一下是轉載的一篇文章,希望對還迷茫的童鞋們有點幫助。
什麼是 JavaScript 框架?
JavaScript 本身就是一種功能強大的語言,您不需要額外的框架就可創建富互聯網應用程序(RIA)。然而使用 JavaScript 並不是件容易的事,主要是由於支持多個 Web 浏覽器產生的復雜性。與 HTML 和 CSS一樣,不同的浏覽器有不同的 JavaScript 實現。讓 JavaScript 代碼實現跨浏覽器兼容簡直是個噩夢。
JavaScript 框架或庫是一組能輕松生成跨浏覽器兼容的 JavaScript 代碼的工具和函數。每一個庫都在眾多流行的 Web 浏覽器的現代版本上進行了可靠的測試,因此,您可以放心地使用這些框架,您的基於 JavaScript 的 RIA 將會在不同浏覽器和平台上以類似的方式工作。
除了解決跨浏覽器問題,使用 JavaScript 框架可以更容易地編寫檢索、遍歷、操作 DOM 元素的代碼。它們不僅提供獲取 DOM 元素引用的快捷函數,而且還允許 DOM 遍歷函數以菊花鏈(daisy-chaining)方式查找任意深度的父元素、子元素、兄弟元素。最後,框架還提供一系列函數來更輕松地操作這些對象,可以改變、添加或刪除內容本身;或者使用 CSS 樣式類來改變元素的外觀。
框架的另一重要特性是其改進的事件處理支持。由於不同浏覽器的實現方式各不相同,跨浏覽器事件處理將會非常艱難。因此 JavaScript 框架通常封裝浏覽器事件,並提供一組有用的跨浏覽器兼容的函數來進行處理。有些框架還會提供一組標准鍵盤代碼來表示基於鍵盤的事件(如按下 Escape 鍵、Return 鍵、光標鍵,等等)。
所有這些特性都非常有用,但 JavaScript 框架有一個特性對於它最近的流行非常重要 — 支持 Ajax。與 JavaScript 的其他許多方面一樣,每個 Web 浏覽器往往以不同方式支持 Ajax,這使得以一種在所有 Web 浏覽器中都受支持的方式處理 Ajax 變得十分復雜。幾乎所有 JavaScript 框架都包含某種形式的 Ajax 庫支持,通常提供 Ajax 請求和響應對象,以及用於評價響應、更新 DOM 元素、查詢特定請求的幫助函數(helper)。
JavaScript 框架的典型特性
現在,讓我們看一看大多數 JavaScript 框架都具備的有用特性。包括:
1.選擇器(Selector)
2.DOM 遍歷
3.DOM 操作
4.實用(Utility)函數
5.事件處理Ajax
在解釋每個特性時,我將會用以下的一個或幾個 JavaScript 框架舉例說明:Prototype、jQuery、YUI、ExtJS 和 MooTools。盡管每個框架的實現和語法都各不相同,但概念都是相同的。每個框架都有一個詳細的 API 參考,可幫助您理解如何使用該特定庫中的特性。