5個JAVASCRIPT架構詳細的比較

來源:互聯網
上載者:User

架構比較

表1對本文中討論的五個架構提供詳細的比較

  Prototype jQuery YUI ExtJS MooTools
Latest Version 1.6.1 1.4.1 3.00 3.1 1.2.4
License MIT MIT & GPL BSD Commercial & GPL v3 MIT
      Browser Compatibility    
IE Support 6.0+ 6.0+ 6.0+ 6.0+ 6.0+
Firefox Support 1.5+ 2.0+ 3.0+ 1.5+ 2.0+
Safari Support 2.0.4+ 3.0+ 4.0+ 3.0+ 2.0+
Opera Support 9.25+ 9.0+ 10.0+ 9.0+ 9.0+
Chrome Support 1.0+ 1.0+ Not verified Not verified Not verified
      Core Features    
Ajax Support Yes Yes Yes Yes Yes
DOM Manipulation Yes Yes Yes Yes Yes
DOM Traversal Yes Yes Yes Yes Yes
Event Handling Yes Yes Yes Yes Yes
JSON Yes Yes Yes Yes Yes
Selectors Yes Yes Yes Yes Yes
      UX/UI Enhancements    
Accordion No jQuery UI No Yes MooTools More
Animation scriptaculous Yes Yes Yes Yes
Auto Completion scriptaculous No Yes Yes No
Browser History scriptaculous No Yes Yes No
Calendar No jQuery UI Yes Yes No
Charting No No Yes Yes No
Drag and Drop scriptaculous jQuery UI Yes Yes MooTools More
Grids No No Yes Yes MooTools More
Progress Bar No jQuery UI Yes Yes No
Resizing No jQuery UI Yes Yes No
Rich Text Editor No No Yes Yes No
Slider scriptaculous jQuery UI Yes Yes MooTools More
Tabs No jQuery UI Yes Yes No
Themes No jQuery UI Yes Yes MooTools More
Tree Views No No Yes Yes No

其他值得注意的架構

為了簡潔,本文只討論五個比較流行的架構,這並不意味著這是最流行的、最好的、功能最豐富的。

其它的一些架構也值得一提、值得一看。

  • Cappuccino
  • Dojo
  • Glow
  • GWT
  • MochiKit
  • Qooxdoo
  • Rialto
  • Rico
  • SproutCore
  • Spry
  • UIZE

回顧

在本文中,你已經瞭解到JavaScript架構的概念,知道它在網站和網路應用發展中的好處。對這些架構的共同功能有一個總體描述,並用執行個體說明了它的應用。同時你也瞭解到五個架構的一個或一些使用者體驗和使用者介面。最後,你得到了一份直觀的表格,反白每個架構具有或不具有的特色。有了這些資訊,在為你或你的團隊作出明智選擇之前,你可以進一步研究這些架構。

資源

  • (developerWorks, November 2005) explains how to
    build Ajax-based Web applications.
  • Learn about Dojo.
  • Read the articleDojo concepts for Java developers(developerWorks, October 2008) to bridge the gap from Java code to Dojo so that you can get up to speed quickly and use the toolkit when developing your applications.
  • Read Call SOAP Web services with Ajax,
    Part 1: Build the Web services client
    (developerWorks, October 2005) to learn how to implement a Web browser-based
    SOAP Web services client using the Ajax design pattern.
  • Overcome
    security threats for Ajax applications
    (developerWorks, June 2007) discusses the
    threats associated with Ajax technologies and gives you some best
    practices to avoid them.
  • Mastering
    Ajax, Part 1: Introduction to Ajax
    (developerWorks, December 2005) explains how HTML,
    JavaScript, DHTML, and DOM work together to make extremely efficient Web
    development an easy reality.
  • Simplify Ajax development with jQuery
    (developerWorks, April 2007) examines the jQuery
    philosophy, explains its features and functions, and gives you some common
    Ajax tasks.
  • Using Ajax with DB2
    (developerWorks, August 2007) shows how the IBM Information
    on Demand 2006 Conference Personal Planner uses Ajax to work with
    DB2®.
  • To listen to interesting interviews and
    discussions for software developers, check out developerWorks podcasts.
  • developerWorks technical events and webcasts:
    Stay current with developerWorks technical events and webcasts.

獲得產品和技術

  • Download the Dojo toolkit. Dojo toolkit.
  • Get the Prototype Javascript framework.
  • Get jQuery.
  • The jQuery User Interface provides
    abstractions for low-level interaction and animation, advanced effects and
    high-level, themeable widgets, built on top of the jQuery JavaScript
    Library.
  • Get script.aculo.us.
  • Get MooTools.
  • Download and
    learn about the Yahoo! YUI Library.
  • Get ExtJS.
  • Innovate your
    next open source development project with IBM trial software,
    available for download or on DVD.
  • Download IBM product evaluation versions,
    and get your hands on application development tools and middleware
    products from DB2, Lotus®, Rational®, Tivoli®, and
    WebSphere®.

關於作者

Joe Lennon is a 24-year-old software developer from Cork, Ireland. Joe is author of the forthcoming Apress book Beginning CouchDB, and has contributed several technical articles and tutorials to IBM developerWorks. In his spare time, Joe likes to play football (soccer), tinker with gadgets and work on his Xbox 360 gamer score.

轉載地址:http://www.denisdeng.com/?p=736

原文地址:http://www.ibm.com/developerworks/web/library/wa-jsframeworks/index.html

摘要:現代網站和web應用程式趨向於依賴用戶端的大量的javascript來提供豐富的互動。特別是通過不重新整理頁面的非同步請求來返回資料或從伺服器端的指令碼(或資料系統)中得到響應。在這篇文章中,你將會瞭解到javascript架構如何更快、更方便的建立互動性強、響應快得網站和web應用程式。

導言:JavaScript是一種物件導向的指令碼語言,一直以來用作Web瀏覽器應用程式用戶端指令碼介面的選擇。JavaScript允許Web開發人員編程與網頁上的對象的工作,為憑空操作這些對象提供了一個平台。當JavaScript最初推出時,它通常用來提供一些微不足道的功能,如時鐘、在瀏覽器狀態列中滾動文本。另外一個常用特色就是“rollover link”,即當使用者的滑鼠滑過對象時,其文本的顏色或背景圖片發生改變。然而,近年來Ajax為網路編程帶來了全新的互動,JavaScript幾經發展變得更加有用。在Ajax之前,任何伺服器端處理或資料庫訪問都需要整頁面被“重新整理”或由瀏覽器呈現新的頁面。這不僅緩慢,令使用者失望,而且也浪費了頻寬和資源。

Ajax就是非同步JavaScript和XML,雖然引用XML不在有效,但是Ajax能對除了XMl的其它幾種格式的資料作出響應,如JSON(JavaScript對象標記法)。 Ajax的工作原理是,以非同步方式提交一個 HTTP請求提交到web伺服器,不重新整理也不呈現整個頁面,僅呈現響應的內容。相反,開發人員通常使用DOM(文件物件模型)操作修改網頁的一部分,HTTP響應返回的資料將反映這些改變。

什麼是JavaScript架構?

JavaScript本身是一種非常強大的語言,你不需要任何額外的架構就可以建立由它支援的富互連網應用系統(RIA)。但是,使用JavaScript並不是一件容易的事,主要是因為在試圖提供多種瀏覽器支援時各種併發症的出現。和HTML和CSS一樣,不同的瀏覽器的JavaScript執行方式不同,那麼確保您的JavaScript代碼跨瀏覽器安全色可以說是一個惡夢。

一個JavaScript架構或庫實際上是一系列工具和函數,它能更容易產生跨瀏覽器安全色的JavaScript代碼。每個庫在許多流行的最新版本的Web瀏覽器經過了嚴格測試。因此,您完全可以相信,使用這些架構中的任何一個,您的基於JavaScript的RIA在不同的瀏覽器和平台中將大體一致。

除了瀏覽器安全色性問題外,JavaScript架構可以更容易地編寫代碼去擷取、遍曆及操縱DOM元素。它們不僅能提供一個快捷的函數來擷取一個DOM元素的引用,而且還允許菊花式的DOM遍曆函數鏈尋找父母、子女或任何深度的兄弟節點元素。最後,架構提供了一系列的函數,使其更容易的操縱這些對象,允許其內容更改、添加、刪除,或者操縱class的樣式而影響元素的外觀。

JavaScript架構的另一個重要特色就是能更好的支援事件處理。由於瀏覽器之間的不同實現,跨瀏覽器事件處理可以說是一個惡夢。因此,JavaScript架構通常將瀏覽器事件封裝起來,並提供一系列有用的跨瀏覽器函數來處理它們。一些架構也提供了標準化的代表鍵盤鍵碼系列的事件(如Esc鍵、Enter鍵、游標等等)。

所有這些功能是非常有用的,JavaScript架構已在其最近流行Ajax應用中起重要作用。和JavaScript其他方面一樣,每個Web瀏覽器傾向於支援以不同的方式Ajax,使Ajax支援所有的瀏覽器將是很繁重的工作。幾乎所有的JavaScript架構都包括一定形式的Ajax庫,通常是提供Ajax請求和響應對象,在對響應作出評價後,更新DOM元素,輪詢一個特定的請求。

一個JavaScript架構的典型特徵

現在讓我們看看大多數JavaScript架構都具有的一些功能。這些特色有:

  • 選取器
  • DOM遍曆
  • DOM操作
  • 實用函數
  • 事件處理
  • Ajax

為了更好的詮釋這些特色,我將從下面一個或多個JavaScript架構中列舉一個例子:Prototype, jQuery, YUI,ExtJS和 MooTools。雖然每個架構的執行情況和文法不同,但其概念大致相同。每個架構有一個詳細的API參考,你可以參考它決定如何使用這些特定庫的特色功能。



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.