網(wǎng)站開發(fā)根底知識(shí)AJAX原理 |
發(fā)布時(shí)間:2020-09-06 文章來(lái)源:本站 瀏覽次數(shù):2580 |
Ajax簡(jiǎn)介Ajax,運(yùn)用它能夠構(gòu)建更為動(dòng)態(tài)和呼應(yīng)更活絡(luò)的Web運(yùn)用程序。該方法的關(guān)鍵在于對(duì)閱讀器端的JavaScript、DHTML和與服務(wù)器異步通訊的組合。本文也演示了啟用這種方法是多么簡(jiǎn)單:運(yùn)用一個(gè)Ajax框架(指DWR)結(jié)構(gòu)一個(gè)運(yùn)用程序,它直接從閱讀器與后端服務(wù)進(jìn)行通訊。假如運(yùn)用得當(dāng),這種強(qiáng)壯的力氣能夠使運(yùn)用程序愈加天然和呼應(yīng)活絡(luò),從而提高用戶的閱讀體會(huì)。 Ajax 的定義 順便說(shuō)一下,Ajax 是 Asynchronous JavaScript and XML(以及 DHTML 等)的縮寫。這個(gè)短語(yǔ)是 Adaptive Path 的 Jesse James Garrett 創(chuàng)造的。 術(shù)語(yǔ)Ajax用來(lái)描繪一組技能,它使閱讀器能夠?yàn)橛脩艄┙o更為天然的閱讀體會(huì)。在Ajax之前,Web站點(diǎn)強(qiáng)制用戶進(jìn)入提交/等候/從頭顯現(xiàn)典范,用戶的動(dòng)作總是與服務(wù)器的“考慮時(shí)間”同步。Ajax供給與服務(wù)器異步通訊的才能,從而運(yùn)用戶從懇求/呼應(yīng)的循環(huán)中解脫出來(lái)。借助于Ajax,能夠在用戶單擊按鈕時(shí),運(yùn)用JavaScript和DHTML當(dāng)即更新UI,并向服務(wù)器宣布異步懇求,以履行更新或查詢數(shù)據(jù)庫(kù)。當(dāng)懇求回來(lái)時(shí),就能夠運(yùn)用JavaScript和CSS來(lái)相應(yīng)地更新UI,而不是改寫整個(gè)頁(yè)面。最重要的是,用戶乃至不知道閱讀器正在與服務(wù)器通訊:Web站點(diǎn)看起來(lái)是即時(shí)呼應(yīng)的。 盡管Ajax所需的根底架構(gòu)現(xiàn)已出現(xiàn)了一段時(shí)間,但直到最近異步懇求的真正威力才得到運(yùn)用。能夠具有一個(gè)呼應(yīng)極端活絡(luò)的Web站點(diǎn)的確激動(dòng)人心,因?yàn)樗罱K允許開發(fā)人員和規(guī)劃人員運(yùn)用規(guī)范的HTML/CSS/JavaScript倉(cāng)庫(kù)創(chuàng)立“桌面風(fēng)格的(desktop-like)”可用性。 所有這些Web站點(diǎn)都告訴咱們,Web運(yùn)用程序不必徹底依賴于從服務(wù)器從頭載入頁(yè)面來(lái)向用戶出現(xiàn)更改。一切好像就在瞬間產(chǎn)生。簡(jiǎn)而言之,在涉及到用戶界面的呼應(yīng)活絡(luò)度時(shí),基準(zhǔn)設(shè)得更高了。 定義Ajax Ajax不是一種技能。實(shí)際上,它由幾種蓬勃發(fā)展的技能以新的強(qiáng)壯方法組合而成。Ajax包括:
Ajax的作業(yè)原理 Ajax的核心是JavaScript目標(biāo)XmlHttpRequest。該目標(biāo)在Internet Explorer 5中首次引進(jìn),它是一種支持異步懇求的技能。簡(jiǎn)而言之,XmlHttpRequest使您能夠運(yùn)用JavaScript向服務(wù)器提出懇求并處理呼應(yīng),而不阻塞用戶。 在創(chuàng)立Web站點(diǎn)時(shí),在客戶端履行屏幕更新為用戶供給了很大的靈活性。下面是運(yùn)用Ajax能夠完結(jié)的功用:
直接修改表格數(shù)據(jù),而不是要求用戶導(dǎo)航到新的頁(yè)面來(lái)修改數(shù)據(jù)。對(duì)于Ajax,當(dāng)用戶單擊Edit時(shí),能夠?qū)㈧o態(tài)表格改寫為內(nèi)容可修改的表格。用戶單擊Done之后,就能夠宣布一個(gè)Ajax懇求來(lái)更新服務(wù)器,并改寫表格,使其包括靜態(tài)、只讀的數(shù)據(jù)。 Ajax 能夠做什么? 如今 Google Suggest 和 Google Maps 運(yùn)用了 Ajax,經(jīng)過(guò) Ajax,咱們能夠使得客戶端得到豐富的運(yùn)用體會(huì)及交流操作,而用戶不會(huì)感覺到有網(wǎng)頁(yè)提交或改寫的進(jìn)程,頁(yè)面也不需求被從頭加載,運(yùn)用的數(shù)據(jù)交流都被躲藏。 運(yùn)用Ajax的主要原因1、經(jīng)過(guò)適當(dāng)?shù)?/span>Ajax運(yùn)用到達(dá)更好的用戶體會(huì); 與傳統(tǒng)的web運(yùn)用比較 Ajax運(yùn)用程序應(yīng)該深入考慮特別用戶的需求,包括不同年齡的用戶,不同背景的用戶等,以及能夠被不同的閱讀設(shè)備拜訪,比如移動(dòng)電話。這些要素的重要性很大程度上取決于你所開發(fā)的運(yùn)用程序的細(xì)節(jié)需求。 |
|