使用 Prototype JavaScript 庫和 script.aculo.us
目前,Web 應用程式開發幾乎等同於 Ajax 開發。Ajax 不再是在特殊情況下才添加到應用程式的補充物了。它現在已經成為 Web 開發不可或缺的一部分。對於某些人而 言,用 Ajax 增強應用程式曾經是一項極具挑戰的任務。處理跨瀏覽器限制、編寫大量複雜的 JavaScript 以及熟悉其中的數字編碼,這些只不過是 Ajax 開發人員所面臨 的挑戰的一小部分。還好,目前已經有幾種開源 JavaScript 庫,使上述操作更加容易。在這個包含三個部分的系列文章的第 1 部分,您將使用 Prototype JavaScript 庫 和 script.aculo.us 建立一個用來管理歌曲的 Ajax 應用程式。
本系列文章包含三個部分,使用兩個獨立的開源項目(Prototype JavaScript 庫和 script.aculo.us)為 Web 2.0 網站建立優秀的 Ajax 應用程式。在此系列文章的第 1 部分,我們先介紹 Prototype JavaScript 庫(參見 參考資料 獲得有關連結)。本文使用的是 Prototype 當前的最新版本 1.6.0.2(參見 參考資料)。Ajax 涉及到動 態資料,所以需要用到伺服器端的技術。在本文中,我們將 PHP 5.2.1 與 Apache 2.0.59 和 MySQL 5.0.41 結合起來一起使用。(參見 參考資料)。當然,您也可以選擇 自己的程式設計語言、Web 服務器和資料庫。
Prototype 簡介
如果進行尋找,可以找到很多 JavaScript 庫。原因有兩個:首先,JavaScript 是瀏覽器語言,因此也是軟體開發的關鍵區段。許多人都在編寫 JavaScript 代碼,所 以就有很多 JavaScript 庫存在。其次,JavaScript 很複雜,不同瀏覽器間的差異常常使 JavaScript 開發多少有些痛苦。幸運的是,JavaScript 庫通常都提供了各種抽 象來減輕這種痛苦。Prototype 就是這樣的 JavaScript 庫。
Prototype 是一種相當寬泛的庫,具有很多功能。它的功能可以簡化普通任務,並側重於 Ajax。Prototype 提供一種很酷的方式,實現了在 JavaScript 內繼承 Java™ 和 C++ 風格、對 HTML DOM 元素的擴充以及用於 JSON 的工具 + 生產力。在本文中,您將重點學習 Prototype 能為 Ajax 做些什麼,同時還會瞭解幾個 Prototype 的其他功能。
使用 Prototype 的 Ajax 庫
Prototype 具有很多為了協助您學習 Ajax 開發而設計的功能。Prototype 如此受歡迎的原因之一就是它不限制您如何進行 Ajax 編程。比如,有兩種常用的模式可以響 應 XMLHttpRequest(Ajax 內的底層機制):一種方式是使用用來重繪部分螢幕的 HTML 進行響應;一種是用資料進行響應,而將解析資料和重繪留給其他的 JavaScript 代碼處理。Prototype 支援這兩種模式。讓我們來看看它是如何啟用第一種模式的,即用 HTML 響應。