![ajax完全自學(xué)手冊(cè)教程第18章進(jìn)度條_第1頁](http://file4.renrendoc.com/view/f2b4304a4914f943b1d9d8618a921d89/f2b4304a4914f943b1d9d8618a921d891.gif)
![ajax完全自學(xué)手冊(cè)教程第18章進(jìn)度條_第2頁](http://file4.renrendoc.com/view/f2b4304a4914f943b1d9d8618a921d89/f2b4304a4914f943b1d9d8618a921d892.gif)
![ajax完全自學(xué)手冊(cè)教程第18章進(jìn)度條_第3頁](http://file4.renrendoc.com/view/f2b4304a4914f943b1d9d8618a921d89/f2b4304a4914f943b1d9d8618a921d893.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第18章 Ajax進(jìn)度條進(jìn)度條是在Ajax應(yīng)用系統(tǒng)中較為常用的功能,進(jìn)度條可以極大豐富客戶體驗(yàn),在很多網(wǎng)站如Google Earth中就提供了進(jìn)度條。在本章中講解一個(gè)簡單的進(jìn)度條,這個(gè)進(jìn)度條實(shí)現(xiàn)了所有進(jìn)度條應(yīng)有的功能。18.1 需求分析和概要設(shè)計(jì)本節(jié)將講述進(jìn)度條的需求,以及所要達(dá)到的效果,和一些在開發(fā)中應(yīng)注意的細(xì)節(jié)。18.1.1 需求分析在多數(shù)Ajax開發(fā)中,由于多線程異步提交方式,經(jīng)常會(huì)遇到線程等待,這時(shí)就需要使用進(jìn)度條在用戶等待時(shí)間內(nèi)顯示,這樣做可以極大豐富用戶體驗(yàn)。進(jìn)度條需要實(shí)現(xiàn)以下功能:當(dāng)加載數(shù)據(jù)時(shí),進(jìn)度條顯示,并根據(jù)加載數(shù)據(jù)的速度動(dòng)態(tài)顯示進(jìn)度條進(jìn)程。根據(jù)數(shù)據(jù)加載的事件,判斷是否加載進(jìn)
2、度條。進(jìn)度條當(dāng)加載數(shù)據(jù)完畢時(shí),因自動(dòng)消失,并且釋放進(jìn)度條資源,減輕服務(wù)器壓力。在制作進(jìn)度條過程中,應(yīng)注意對(duì)進(jìn)度條的控制,當(dāng)進(jìn)度條已經(jīng)行進(jìn)至盡頭時(shí),應(yīng)迅速停止進(jìn)度條,釋放資源,防止腳本報(bào)錯(cuò)而影響用戶體驗(yàn)。18.1.2 概要設(shè)計(jì)在進(jìn)行進(jìn)度條開發(fā)時(shí),流程如圖所示:18.2 實(shí)現(xiàn)代碼進(jìn)度條的實(shí)現(xiàn)實(shí)際上較為簡單,進(jìn)度條的開發(fā)中有很多細(xì)節(jié)需要注意,并且這些細(xì)節(jié)可能直接影響到進(jìn)度條開發(fā)的成敗。本示例中的進(jìn)度條模擬了數(shù)據(jù)加載過程,進(jìn)度條的顯示和隱藏。在本示例中,使用了定時(shí)局部刷新的方式來使進(jìn)度條行進(jìn),本節(jié)中的關(guān)于定時(shí)局部刷新細(xì)節(jié)描述非常清晰,需要讀者仔細(xì)閱讀本節(jié),掌握定時(shí)局部刷新方式開發(fā)Ajax應(yīng)用。18.2
3、.1 功能頁面本示例中,功能頁面僅有一個(gè),其前臺(tái)HTML代碼非常簡單,部分代碼如下所示:在功能頁面中,僅僅提供了一個(gè)Panel和Button,而在Panel中放置了10個(gè),并為這些的id屬性以升序規(guī)則賦值,這些就是顯示進(jìn)度條中灰色矩形的區(qū)域。進(jìn)度條運(yùn)行效果如圖所示:18.2.2 前臺(tái)JavaScript腳本對(duì)于進(jìn)度條,在需求明確指出需要及時(shí)停止,并保證不出現(xiàn)任何錯(cuò)誤,這種定時(shí)局部刷新的方式在開發(fā)中有很多開發(fā)細(xì)節(jié)需要注意。pollCallBack 函數(shù)會(huì)不斷解析服務(wù)器回傳的XmlDom對(duì)象,以決定進(jìn)度條的行進(jìn)速度。pollCallBack()函數(shù)當(dāng)發(fā)現(xiàn)進(jìn)度條行進(jìn)至尾部時(shí),會(huì)使用window.cl
4、earTimeout()方法并傳入在readyStateChangeHandler()函數(shù)中使用全局變量記錄的定時(shí)刷新timerid,這樣就可以終止進(jìn)度條行進(jìn)。18.2.3 服務(wù)器端代碼在上一節(jié)中已經(jīng)講解了如何使用JavaScript實(shí)現(xiàn)定時(shí)刷新進(jìn)度條,所有進(jìn)度條都依賴于服務(wù)器端數(shù)據(jù)支持,決定進(jìn)度條的行進(jìn)速度和顯示、隱藏。由于本章示例僅是模擬進(jìn)度條加載數(shù)據(jù),服務(wù)器端較為簡單,但是也揭示了進(jìn)度條服務(wù)器端支持的特點(diǎn),代碼如下所示:(詳細(xì)內(nèi)容請(qǐng)參照本書)服務(wù)器回傳XML數(shù)據(jù)至前臺(tái)腳本,由前臺(tái)腳本解析XML進(jìn)行進(jìn)度條的顯示和行進(jìn),從而完美的實(shí)現(xiàn)了無刷新進(jìn)度條。18.3 小結(jié)在本章中展示了一個(gè)進(jìn)度條示例,在該示例中使用記錄定時(shí)刷新timerid,定時(shí)請(qǐng)求服務(wù)器獲取進(jìn)度、進(jìn)度全滿即通過timerid終止請(qǐng)求,并提示用戶。在本示例中,還比較了兩種請(qǐng)求服務(wù)器方式的特點(diǎn),并根據(jù)不同的情況使用不同的請(qǐng)求方式提高效率。本示例雖然
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)療器械工程居間合同范本
- 施工電梯布置專項(xiàng)方案
- 食品安全風(fēng)險(xiǎn)評(píng)估與管理技術(shù)作業(yè)指導(dǎo)書
- 承包山林合同書
- 市場(chǎng)營銷策略制定與實(shí)施作業(yè)指導(dǎo)書
- 停車場(chǎng)管理服務(wù)合同
- 住房和城鄉(xiāng)建設(shè)委員會(huì)
- 林業(yè)經(jīng)濟(jì)管理與政策作業(yè)指導(dǎo)書
- 雞舍租賃合同
- 技術(shù)服務(wù)合同格式
- 關(guān)于進(jìn)行小區(qū)第一屆業(yè)主委員會(huì)選舉投票的公告
- 2023年山西國際能源集團(tuán)有限公司招聘筆試題庫及答案解析
- YC/T 295-2009卷煙制造過程能力測(cè)評(píng)導(dǎo)則
- 仁愛英語八年級(jí)閱讀理解測(cè)試題和答案
- 山東省中考物理總復(fù)習(xí) 八上 第4講 光現(xiàn)象
- DB11∕T 1875-2021 市政工程施工安全操作規(guī)程
- 心肺康復(fù)完整版本課件
- 傳統(tǒng)節(jié)日春節(jié)英文介紹課件
- 質(zhì)量獎(jiǎng)現(xiàn)場(chǎng)評(píng)審問題集錦精編版
- 裝配式結(jié)構(gòu)技術(shù)課程教學(xué)大綱
- 水資源論證報(bào)告
評(píng)論
0/150
提交評(píng)論