版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、HTML-加速、再加速(上)web開(kāi)發(fā)人員是否必須掌握復(fù)雜的組件技術(shù)才能加快html頁(yè)面的訪問(wèn)速度?答案是:不一定!實(shí)際上,有許多關(guān)于HTML與DHTML方面的技巧,它們?cè)砗?jiǎn)單而且上手容易。無(wú)論是技術(shù)高超的老手,還是初涉編程的菜鳥(niǎo),領(lǐng)會(huì)這些都十分必要。明顯HTML,暗渡“公用腳本”減少web頁(yè)面下載時(shí)間的關(guān)鍵就是設(shè)法減小文件大小。當(dāng)多個(gè)頁(yè)面共用一些成分內(nèi)容時(shí),就可以考慮將這些公用部分單獨(dú)分離出來(lái)。比如:我們可以將多個(gè)HTML頁(yè)面都用到
2、的腳本程序編寫(xiě)成獨(dú)立存在的.js文件,然后再在頁(yè)面中按如下方式調(diào)用它:這樣,公用文件只需要下載一次,然后就進(jìn)入緩沖區(qū)。等下次再次調(diào)用包含公用文件的html頁(yè)面時(shí),下載時(shí)間明顯減少。讓樣式表內(nèi)容進(jìn)入地下工作CSS是HTML裝扮器,一個(gè)漂亮的Web頁(yè)面不可能沒(méi)有它。HTML頁(yè)面中有多種引用CSS的方法,不同的方法導(dǎo)致的效率也不一樣。通常,我們可以將定義于間的樣式控制代碼提取出來(lái),保存到單獨(dú)的.css文件中,然后在HTML頁(yè)面中以標(biāo)記或者@i
3、mpt標(biāo)記的方式進(jìn)行引用:@impturl(“mysheet1.css“)請(qǐng)注意2點(diǎn):1、.css文件中無(wú)需包括標(biāo)記;2、@impt和LINK標(biāo)記要定義在HTML頁(yè)面的HEAD部分。寶貴內(nèi)存節(jié)省兩法盡量減少HTML頁(yè)面占用的內(nèi)存空間是加快頁(yè)面下載速度的一個(gè)有效方法。在這方面,有2個(gè)需要注意的問(wèn)題:1、使用同一種腳本語(yǔ)言HTML頁(yè)面離不開(kāi)腳本程序的支持,我們經(jīng)常會(huì)在頁(yè)面中嵌入多種腳本語(yǔ)言,比如javript與VB。但是,不知你發(fā)覺(jué)沒(méi)有:這
4、樣的混合使用減慢了頁(yè)面的訪問(wèn)速度。原因在于:要解釋并運(yùn)行多種腳本代碼,就必須在內(nèi)存中裝載多種腳本引擎。所以,請(qǐng)盡量在頁(yè)面中使用同一種腳本語(yǔ)言編寫(xiě)代碼。2、巧用IFrame你使用過(guò)標(biāo)記嗎?它可是一個(gè)非常美妙的功能。如果要在一個(gè)HTML文檔中包含第2個(gè)頁(yè)面的內(nèi)容,通常的方法是使用標(biāo)記。但是有了,一切變得簡(jiǎn)單了。比如,開(kāi)發(fā)一個(gè)文檔預(yù)覽頁(yè)面,可以在左邊放置一系列主題,在右邊放置一個(gè)IFRAME,其中包含要預(yù)覽的文檔;當(dāng)鼠標(biāo)掠過(guò)左邊的每一個(gè)主題鏈
5、接時(shí),就在右邊建立一個(gè)新的IFRAME以預(yù)覽文檔。這樣做,代碼效率無(wú)疑是高效的,但同時(shí)導(dǎo)致了繁重的處理過(guò)程,最終是緩慢的速度。沒(méi)關(guān)系,我們有辦法:只使用單一的IFRAME。當(dāng)鼠標(biāo)指向一個(gè)新主題時(shí),只需要修改IFRAME元素的SRC屬性即可。這樣,任何時(shí)間內(nèi)只會(huì)有一個(gè)預(yù)覽文檔保留在內(nèi)存。擇優(yōu)選用動(dòng)畫(huà)定位屬性每天上網(wǎng)瀏覽頁(yè)面,你一定會(huì)看到許多動(dòng)畫(huà)效果。比如,一個(gè)可愛(ài)的小兔子在頁(yè)面上來(lái)回地走動(dòng)...實(shí)現(xiàn)這個(gè)效果的核心技術(shù)就是CCS定位。通常,
6、我們是使用element.style.left和element.style.top2個(gè)屬性來(lái)達(dá)到圖形定位的目的。但是,這樣做會(huì)產(chǎn)生一些問(wèn)題:left屬性返回一個(gè)字符串,并且其中包含了度量單位(比如100px)。因此,要設(shè)定新的位置坐標(biāo),就必須首先對(duì)這個(gè)字符串返回值進(jìn)行處理,然后才能賦值,象下面一樣:dimstringLeftintLeftstringLeft=element.style.leftintLeft=parseInt(stri
7、ngLeft)intLeft=intLeft10element.style.left=intLeft你一定會(huì)感覺(jué)做這么點(diǎn)事情竟要編寫(xiě)這么復(fù)雜的代碼,是否有更簡(jiǎn)潔的方法?當(dāng)然有!請(qǐng)看這4個(gè)屬性:posLeft、posTop、posWidth和posHeight,它們對(duì)應(yīng)于相應(yīng)字符串返回值的點(diǎn)數(shù)數(shù)值。好了,使用這些屬性重新編寫(xiě)代碼實(shí)現(xiàn)上面代碼實(shí)現(xiàn)的功能:element.style.posLeft=10代碼短小、速度卻更快!循環(huán)控制多個(gè)動(dòng)畫(huà)說(shuō)
8、到制作動(dòng)畫(huà)效果,當(dāng)然離不開(kāi)定時(shí)器的運(yùn)用。通常的方法就是使用window.setTimeout來(lái)不斷地定位頁(yè)面上的元素。但是,如果頁(yè)面上有多個(gè)動(dòng)畫(huà)要顯示,是不是就要設(shè)定多個(gè)定時(shí)器呢?答案是No!原因很簡(jiǎn)單:定時(shí)器功能將消耗掉大量寶貴的系統(tǒng)資源??墒俏覀?nèi)阅茉陧?yè)面上控制多個(gè)動(dòng)畫(huà),技巧就是使用一個(gè)循環(huán)。在循環(huán)中根據(jù)不同的變量值控制相應(yīng)動(dòng)畫(huà)的位置,整個(gè)循環(huán)中只使用一個(gè)window.setTimeout()函數(shù)調(diào)用。Visibility快于Dis
9、play讓圖畫(huà)時(shí)隱時(shí)現(xiàn)會(huì)創(chuàng)造很有趣的效果,有2種方法可以實(shí)現(xiàn)這個(gè)目的:使用CSS的visibility屬性或者display屬性。對(duì)于絕對(duì)位置元素,diaplay和visibility具有同樣的效果。兩者的區(qū)別在于:設(shè)置為display:none的元素將不再占用文檔流的空間,而設(shè)置為visibility:hidden的元素仍然保留原位置。但是如果要處理絕對(duì)位置的元素,使用visibility會(huì)更快。從小處著手編寫(xiě)DHTML網(wǎng)頁(yè)的一個(gè)重要
10、提示是:從小處著手。初次編寫(xiě)DHTML頁(yè)面時(shí),一定不要試圖在頁(yè)面中使用你了解到的全部DHTML功能。每次可以只使用一個(gè)單一的新特征,并且仔細(xì)這些都無(wú)疑降低了web訪問(wèn)效率。所以請(qǐng)謹(jǐn)記:同一位置的URL,在不同頁(yè)面中請(qǐng)保持URL字符串的大小寫(xiě)一致性。讓標(biāo)記有始有終自己編寫(xiě)或者查看他人的HTML代碼時(shí),我們一定都遇到過(guò)標(biāo)記有頭無(wú)尾的情況。比如:有頭無(wú)尾標(biāo)記舉例第一個(gè)第二個(gè)第三個(gè)很明顯,上面的代碼中缺少三個(gè)結(jié)束標(biāo)記。但是這并不妨礙它的正確執(zhí)行
11、。在HTML中,這樣的標(biāo)記還有一些,例如FRAME、IMG和P??墒钦?qǐng)不要偷懶,請(qǐng)將結(jié)束標(biāo)記寫(xiě)完整,這樣做不僅使HTML代碼格式規(guī)范,更可以加速頁(yè)面的顯示速度。因?yàn)镮nterExpler將不會(huì)花費(fèi)時(shí)間判斷和計(jì)算段落或者列表項(xiàng)目在哪里結(jié)束。有頭有尾標(biāo)記舉例第一個(gè)第二個(gè)第三個(gè)OK,以上列舉了有關(guān)加速HTML頁(yè)面的10個(gè)處理技巧,描述這些很簡(jiǎn)單,但是只有真正領(lǐng)會(huì)并掌握其中的本質(zhì),并且舉一反三,才會(huì)編寫(xiě)出更快、更好的程序。循環(huán)控制多個(gè)動(dòng)畫(huà)說(shuō)到制
12、作動(dòng)畫(huà)效果,當(dāng)然離不開(kāi)定時(shí)器的運(yùn)用。通常的方法就是使用window.setTimeout來(lái)不斷地定位頁(yè)面上的元素。但是,如果頁(yè)面上有多個(gè)動(dòng)畫(huà)要顯示,是不是就要設(shè)定多個(gè)定時(shí)器呢?答案是No!原因很簡(jiǎn)單:定時(shí)器功能將消耗掉大量寶貴的系統(tǒng)資源??墒俏覀?nèi)阅茉陧?yè)面上控制多個(gè)動(dòng)畫(huà),技巧就是使用一個(gè)循環(huán)。在循環(huán)中根據(jù)不同的變量值控制相應(yīng)動(dòng)畫(huà)的位置,整個(gè)循環(huán)中只使用一個(gè)window.setTimeout()函數(shù)調(diào)用。Visibility快于Displ
13、ay讓圖畫(huà)時(shí)隱時(shí)現(xiàn)會(huì)創(chuàng)造很有趣的效果,有2種方法可以實(shí)現(xiàn)這個(gè)目的:使用CSS的visibility屬性或者display屬性。對(duì)于絕對(duì)位置元素,diaplay和visibility具有同樣的效果。兩者的區(qū)別在于:設(shè)置為display:none的元素將不再占用文檔流的空間,而設(shè)置為visibility:hidden的元素仍然保留原位置。但是如果要處理絕對(duì)位置的元素,使用visibility會(huì)更快。從小處著手編寫(xiě)DHTML網(wǎng)頁(yè)的一個(gè)重要提示
14、是:從小處著手。初次編寫(xiě)DHTML頁(yè)面時(shí),一定不要試圖在頁(yè)面中使用你了解到的全部DHTML功能。每次可以只使用一個(gè)單一的新特征,并且仔細(xì)地觀察由此產(chǎn)生的變化。如果發(fā)現(xiàn)性能有所下降,就可以快速地找到為什么。腳本的DEFER化DEFER是腳本程序強(qiáng)大功能中的一個(gè)“無(wú)名英雄”。你可能從沒(méi)有使用過(guò)它,但是看完這里的介紹后,相信你就離不開(kāi)它。它告訴瀏覽器段包含了無(wú)需立即執(zhí)行的代碼,并且,與SRC屬性聯(lián)合使用,它還可以使這些腳本在后臺(tái)被下載,前臺(tái)的
15、內(nèi)容則正常顯示給用戶。最后請(qǐng)注意兩點(diǎn):1、不要在defer型的腳本程序段中調(diào)用document.write命令,因?yàn)閐ocument.write將產(chǎn)生直接輸出效果。2、而且,不要在defer型腳本程序段中包括任何立即執(zhí)行腳本要使用的全局變量或者函數(shù)。保持同一URL的大小寫(xiě)一致性我們都知道UNIX服務(wù)器是大小寫(xiě)敏感的,但是你知道嗎:InterExpler的緩沖區(qū)也是區(qū)別對(duì)待大小寫(xiě)字符串的。因此,作為web開(kāi)發(fā)者,一定要記住保持相同鏈接的U
16、RL字符串在不同位置的大小寫(xiě)的一致性。否則,就會(huì)在瀏覽器的緩沖區(qū)中存放同一位置的不同文件備份,也增加了下載同一位置內(nèi)容的請(qǐng)求次數(shù)。這些都無(wú)疑降低了web訪問(wèn)效率。所以請(qǐng)謹(jǐn)記:同一位置的URL,在不同頁(yè)面中請(qǐng)保持URL字符串的大小寫(xiě)一致性。讓標(biāo)記有始有終自己編寫(xiě)或者查看他人的HTML代碼時(shí),我們一定都遇到過(guò)標(biāo)記有頭無(wú)尾的情況。比如:有頭無(wú)尾標(biāo)記舉例第一個(gè)第二個(gè)第三個(gè)很明顯,上面的代碼中缺少三個(gè)結(jié)束標(biāo)記。但是這并不妨礙它的正確執(zhí)行。在HTM
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- html-西式甜品網(wǎng)制作
- 電腦加速,寬帶加速
- 水銀加速
- 數(shù)據(jù)庫(kù)加速引擎加速方案研究.pdf
- 片上多核版面加速系統(tǒng)架構(gòu)研究.pdf
- —加速度
- Android系統(tǒng)中HTML5 Canvas硬件加速技術(shù)分析與優(yōu)化.pdf
- 電腦加速辦法
- 急加速熄火
- tcp加速原理
- 加速康復(fù)外科
- 移動(dòng)設(shè)備上特征點(diǎn)提取加速方法研究.pdf
- 借東風(fēng)加速轉(zhuǎn)型
- 資金加速搶灘香江
- 加速度練習(xí)
- 1.3 加速度
- 1.5加速度
- 加速標(biāo)準(zhǔn)制定
- 加速器.dwg
- 加速器.dwg
評(píng)論
0/150
提交評(píng)論