理解AJAX工作原理 構建網站的有效方法

來源:互聯網
上載者:User

Ajax 由 HTML、JavaScript™ 技術、DHTML 和 DOM 組成,這一傑出的方法可以將笨拙的 Web 介面轉化成互動性的 Ajax 應用程式。本文的作者是一位 Ajax 專家,他示範了這些技術如何協同工作 —— 從總體概述到細節的討論 —— 使高效的 Web 開發成為現實。他還揭開了 Ajax 核心概念的神秘面紗,包括 XMLHttpRequest 對象。

五年前,如果不知道 XML,您就是一隻無人重視的醜小鴨。十八個月前,Ruby 成了關注的中心,不知道 Ruby 的程式員只能坐冷板凳了。今天,如果想跟上最新的技術時尚,那您的目標就是 Ajax。

但是,Ajax 不僅僅 是一種時尚,它是一種構建網站的強大方法,而且不像學習一種全新的語言那樣困難。

但在詳細探討 Ajax 是什麼之前,先讓我們花幾分鐘瞭解 Ajax 做 什麼。目前,編寫應用程式時有兩種基本的選擇:

傳統型應用程式

Web 應用程式

兩者是類似的,傳統型應用程式通常以 CD 為介質(有時候可從網站下載)並完整安裝到您的電腦上。傳統型應用程式可能使用互連網下載更新,但運行這些應用程式的代碼在案頭電腦上。Web 應用程式運行在某處的 Web 服務器上 —— 毫不奇怪,要通過 網頁瀏覽器訪問這種應用程式。

不過,比這些應用程式的運行代碼放在何處更重要的是,應用程式如何運轉以及如何與其進行互動。傳統型應用程式一般很快(就在您的電腦上運行,不用等待互連網串連),具有漂亮的使用者介面(通常和作業系統有關)和非凡的動態性。可以單擊、選擇、輸入、開啟菜單和子功能表、到處巡遊,基本上不需要等待。

另一方面,Web 應用程式是最新的潮流,它們提供了在案頭上不能實現的服務(比如 Amazon.com 和 eBay)。但是,伴隨著 Web 的強大而出現的是等待,等待伺服器響應,等待螢幕重新整理,等待請求返回和產生新的頁面。

顯然這樣說過於簡略了,但基本的概念就是如此。您可能已經猜到,Ajax 嘗試建立傳統型應用程式的功能和互動性,與不斷更新的 Web 應用程式之間的橋樑。可以使用像傳統型應用程式中常見的動態使用者介面和漂亮的控制項,不過是在 Web 應用程式中。

還等什麼呢?我們來看看 Ajax 如何將笨拙的 Web 介面轉化成能迅速響應的 Ajax 應用程式吧。

老技術,新技巧在談到 Ajax 時,實際上涉及到多種技術,要靈活地運用它必須深入瞭解這些不同的技術(本系列的頭幾篇文章將分別討論這些技術)。好訊息是您可能已經非常熟悉其中的大部分技術,更好的是這些技術都很容易學習,並不像完整的程式設計語言(如 Java 或 Ruby)那樣困難。

Ajax 的定義

順便說一下,Ajax 是 Asynchronous JavaScript and XML(以及 DHTML 等)的縮寫。這個短語是 Adaptive Path 的 Jesse James Garrett 發明的(請參閱 參考資料),按照 Jesse 的解釋,這不是 個首字母縮寫詞。

下面是 Ajax 應用程式所用到的基本技術:

HTML 用於建立 Web 表單並確定應用程式其他部分使用的欄位。

JavaScript 代碼是運行 Ajax 應用程式的核心代碼,協助改進與伺服器應用程式的通訊。

DHTML 或 Dynamic HTML,用於動態更新表單。我們將使用 div、span 和其他動態超文字標記語言 元素來標記 HTML。

文件物件模型 DOM 用於(通過 JavaScript 代碼)處理 HTML 結構和(某些情況下)伺服器返回的 XML。

我們來進一步分析這些技術的職責。以後的文章中我將深入討論這些技術,目前只要熟悉這些組件和技術就可以了。對這些代碼越熟悉,就越容易從對這些技術的零散瞭解轉變到真正把握這些技術(同時也真正開啟了 Web 應用程式開發的大門)。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.