DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> AJAX入門 >> AJAX基礎知識 >> Ajax驅動的Web站點
Ajax驅動的Web站點
編輯:AJAX基礎知識     

  最近,許多Web站點開始在開發人員社區當中引起關注。這些站點獨特之處在於,它們更像是桌面應用程序而非Web應用程序。當您與它們交互時,它們可以快速在浏覽器顯示無窮的信息而又無需重新加載頁面。

  例如,在Google Maps站點(http://maps.google.com/),您可以單擊地圖,縮小或者放大,然後隨心所欲地來回移動鼠標。浏覽器會連續地從服務器讀取數據,但並不需要刷新浏覽器。它們使用的不是applet或者類似Flash的其他程序。那麼,它們是如何工作的?

  下面介紹Asynchronous JavaScript + XML,即所謂的Ajax.要准確描述什麼是Ajax,最容易的方法是讓其與相反的情況進行對比。對於大部分Web站點,與Web服務器進行交互是最簡單的通信方式——就如您在對講機(walkie-talkie)上與好友聊天一樣。您可以一邊講話他在另一邊接聽,或者他說話你接聽,但您不能同時接聽和講話。對於Web用戶,當填寫在線表單然後單擊提交按鈕後,整個頁面就會發送至Web服務器,用戶必須等待服務器接受請受。當服務器完成處理請求時,它就會將處理過的內容發送過來。只有這時,才可以最終刷新用戶頁面。Ajax是一種減少這一系列事件的嘗試。當用戶位於Ajax類型的Web站點時,浏覽器可以幕後異步調用Web服務器而無需發送整個頁面。

  具體內容

  通常,Ajax沒有軟件開發工具包(SDK)。它不是您可以下載的東西。盡管XML出現在Ajax名稱中,但它實際上是幾種可以使用甚至不使用XML技術的結合。仔細研究一下,我們就會發現它是正被使用的幾項技術的混合體。JavaScript、DOM、XMLHttp以及XML是主要的角色。但要緊記,這種方法論既無標准亦無嚴格定義。您在一個執行程序中所看到的,可能不同於另一個執行程序中的情況。但是,Ajax執行程序中最常見的是JavaScript.

  當用戶與浏覽器交互時,JavaScript代碼會處理各種事件。比如按鍵或單擊事件等,並會相應地進行處理。JavaScript使用XMLHttpRequest對象作為浏覽器和遠程服務器之間的連接。Microsoft首先在Internet Explorer 5中采用XMLHttpRequest對象。

  XMLHttp-Request對象最酷的地方是它可以在背景中運行的同時與Web服務器異步進行對話,而無需重新加載頁面。當Web服務器接收到浏覽器的請求時,它就會進行處理並將處理過的XML數據返回至浏覽器。JavaScript引擎收到這種處理過的XML數據,然後使用DOM處理相應的頁面部件。例如,在Ajax驅動的頁面中,如Google Suggest站點(www.google.com/webhp?complete=1&hl=en),當您輸入搜索字段時,每一個字母都被異步發送至服務器。在輸入時,內容快速顯示在正文的下方。在幕後,每個按鍵都會向服務器進行數次調用。用戶不會受此影響,因為交互不會被中止。只有一部分頁面會被刷新。這一切都可以高效地完成,因為僅有一部分頁面數據(而非整個頁面數據)通過線纜發送。

  Ajax並非新生事物

  應該注意Ajax並非新生事物。該方法論已運用了好多年。Web站點(如Google)正在證明Ajax的有效性、穩定性,並且使Web看起來更像是一個桌面應用程序:即真正意義的Web開發。Ajax特殊之處在於它可以使用驗證過的現有技術完成這一切。換句話說就是,任何標准浏覽器(可以處理JavaScript和DOM的浏覽器)都可以正常工作。您不需要單獨安裝其他插件。

  在Magenic,我們可以看到這種方法論如何使我們的客戶端受益。據我們所知,Ajax並非可以取代一切Web站點,但在計算機指令系統中,它應占有一席之地,並且是我們所需要的一種技能。

  ASP.Net 2.0

  ASP.Net 2.0可以明顯提高腳本模型與這種方法論相結合。它們們稱之為腳本回調而非Ajax.實際上,它們按我早先所描述的那樣進行工作,但是ASP.Net 2.0通過提供工具和支持從而使之更進一步。

  注意事項

  1、由於許多工作都必須移交給客戶端處理,所以Ajax會影響正確堆疊技術之間的命令行。當使用所現有的方法論設計此類應用程序時,應注意這一點。客戶端(浏覽器)需要處理更多的工作,JavaScript要完成這些工作會相當復雜。它需要處理按鍵、鼠標、與DOM交互、處理這些事件和服務器數據的協調等。

  2、還應該注意,許多用戶可能不想在浏覽器上運行JavaScript.這時需要考慮Web站點用戶的需要。

  3、Ajax名稱並非正式的。Adaptive Path的工作人員起了這個容易記住的名字。在ASP.Net 2.0中,它也被稱為“腳本回調”。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved