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