精華:AJAX開發簡略(第一部分)

來源:互聯網
上載者:User
ajax|精華

在使用瀏覽器瀏覽網頁的時候,當頁面重新整理很慢的時候,你的瀏覽器在幹什嗎?你的螢幕內容是什嗎?是的,你的瀏覽器在等待重新整理,而你的螢幕內容是一片空白,而你在螢幕前苦苦的等待瀏覽器的響應。

開發人員為了克服這種尷尬的局面,不得不在每一個可能需要長時間等待響應的頁面上增加一個DIV,告訴使用者“系統正在處理您的請求,請稍候……”。

現在,有一種越來越流行越熱的“老”技術,可以徹底改變這種窘迫的局面。那就是AJAX。如今,隨著Gmail、Google-maps的應用和各種瀏覽器的支援,AJAX正逐漸吸引全世界的眼球。

一、AJAX定義

AJAX(Asynchronous JavaScript and XML)其實是多種技術的綜合,包括Javascript、XHTML和CSS、DOM、XML和XSTL、XMLHttpRequest。其中:

使用XHTML和CSS標準化呈現,使用DOM實現動態顯示和互動,使用XML和XSTL進行資料交換與處理,使用XMLHttpRequest對象進行非同步資料讀取,使用Javascript綁定和處理所有資料。

在AJAX提出之前,業界對於上述技術都只是單獨的使用,沒有綜合使用,也是由於之前的技術需求所決定的。隨著應用的廣泛,AJAX也成為香餑餑了。

二、現狀與需要解決的問題

傳統的Web應用採用同步互動過程,這種情況下,使用者首先向HTTP伺服器觸發一個行為或請求的呼求。反過來,伺服器執行某些任務,再向發出請求的使用者返回一個HTML頁面。這是一種不連貫的使用者體驗,伺服器在處理請求的時候,使用者多數時間處於等待的狀態,螢幕內容也是一片空白。如下圖:

自從採用超文本作為Web傳輸和呈現之後,我們都是採用這麼一套傳輸方式。當負載比較小的時候,這並不會體現出有什麼不妥。可是當負載比較大,回應時間要很長,1分鐘、2分鐘……數分鐘的時候,這種等待就不可忍受了。嚴重的,超過回應時間,伺服器乾脆告訴你頁面不可用。另外,某些時候,我只是想改變頁面一小部分的資料,那為什麼我必須重新載入整個頁面呢?!當軟體設計越來越講究人性化的時候,這麼糟糕的使用者體驗簡直與這種原則背道而馳。為什麼老是要讓使用者等待伺服器取資料呢?至少,我們應該減少使用者等待的時間。現在,除了程式設計、編碼最佳化和伺服器調優之外,還可以採用AJAX。

[1] [2] [3]  下一頁



聯繫我們

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