
(1) Ajax 的種類(lèi)
Ajax包括: XHTML 和 CSS;使用文檔對象模型(Document Object Model )作動(dòng)態(tài)顯示和交互;使用 XML 和 XSLT做數據交互和操作;使用 XMLHttpRequest 進(jìn)行異步數據接收;使用JavaScript 將它們綁定在一起。
(2) Ajax 的特性
Ajax不是適用于所有地方的,它的適用范圍是由它的特性所決定的。
它的特性主要有:
①按需取數據,減少了冗余請求和響應對服務(wù)器造成的負擔。頁(yè)面不讀取無(wú)用的冗余數據,而是在用戶(hù)操作過(guò)程中的某項交互需要某部分數據時(shí)才會(huì )向服務(wù)器發(fā)送請求。
②無(wú)刷新更新頁(yè)面,減少用戶(hù)實(shí)際和心理等待時(shí)間??蛻?hù)端利用 XML HTTP 發(fā)送請求得到服務(wù)端應答數據,在不重新載入整個(gè)頁(yè)面的情況下用JavaScript操作DOM最終更新頁(yè)面。
③預讀功能也可通過(guò)Ajax實(shí)現,但并不是 Ajax 的優(yōu)勢所在,它的主要優(yōu)勢還是在交互方面。
(3) Ajax運行特點(diǎn)
通過(guò)在用戶(hù)和服務(wù)器之間引入一個(gè)Ajax引擎,可消除 Web 的開(kāi)始一停止一開(kāi)始一停止這樣的交互過(guò)程。它就像增加了一層機制到程序中,使其響應更靈敏,而它的確做到了這一點(diǎn)。
不像加載一個(gè)頁(yè)面一樣,在會(huì )話(huà)的開(kāi)始,瀏覽器加載了一個(gè)Ajax引擎--采用JavaScript編寫(xiě)并且通常在一個(gè)隱藏 frame 中。這個(gè)引擎負責繪制用戶(hù)界面以及與服務(wù)器端通信。Ajax引擎允許用異步的方式實(shí)現用戶(hù)與程序的交互--不用等待服務(wù)器的通信。因此用戶(hù)再不用打開(kāi)一個(gè)空白窗口,看到等待光標不斷地轉,等待服務(wù)器完成后再響應。
通常要產(chǎn)生一個(gè)HTTP請求的用戶(hù)動(dòng)作,現在通過(guò)JavaScript調用 Ajax 引擎來(lái)代替。網(wǎng)站設計時(shí)任何用戶(hù)動(dòng)作的響應不再要求直接傳到服務(wù)器,例如,簡(jiǎn)單的數據校驗,內存中的數據編輯,甚至一些頁(yè)面導航,引擎自己就可以處理它。如果引擎需要從服務(wù)器取數據來(lái)響應用戶(hù)動(dòng)作假設它提交需要處理的數據,載入另外的界面代碼,或者接收新的數據,引擎讓這些工作異步進(jìn)行,通常使用 XML,不會(huì )再耽誤用戶(hù)界面的交互。