有的網(wǎng)頁(yè)看起來(lái)并不大但打開會(huì)很卡,有的網(wǎng)頁(yè)雖然很長(zhǎng)但使用流暢,占用用戶電腦的內(nèi)存與CPU就影響這些。
瀏覽器問(wèn)題,有各自的瀏覽器處理內(nèi)存問(wèn)題會(huì)影響到,但幾乎沒(méi)辦法控制得了,Windows上的:
- IE系列,刷新回收的量不大,但最小化會(huì)釋放內(nèi)存,。
- Firefox2據(jù)說(shuō)也會(huì)在最小化回收,可我從沒(méi)見過(guò)最垃圾,用多少是多少,基本不回收。據(jù)說(shuō)prototype的ajax還會(huì)引起內(nèi)存一直增加。
- Opera最好。一直控制得很好。不存在什么問(wèn)題。。
Linux的內(nèi)存分配機(jī)制與Win的不一樣,有多少用多少,如果瀏覽器占光時(shí)說(shuō)不定會(huì)干掉系統(tǒng)。
頁(yè)面問(wèn)題,瀏覽器渲染頁(yè)面會(huì)消耗內(nèi)存和CPU,能減少一點(diǎn)就減少點(diǎn)。
結(jié)構(gòu)上
- 使用DocType,告訴瀏覽器你在用什么,html4也有DTD。也許Transitional更適合你
- 如果使用的是XHTML并能保持良好結(jié)構(gòu)的話,記得輸出相應(yīng)的MIME跟XML頭1,可以減少瀏覽器的代碼檢查,
- 保持結(jié)構(gòu)的完整,不要讓瀏覽器幫你補(bǔ)全代碼。
- 控制頁(yè)面的文件大小,可以通過(guò)程序把為了看代碼比較舒服的縮進(jìn)去掉。2~3K也是大小。
- iframe會(huì)產(chǎn)生新的頁(yè)面,其實(shí)有很多方式可以代替iframe
- 引入的JS與CSS可以適當(dāng)合并,同樣背景圖片也可以合并,甚至有人連Flash都合并
- 給已知寬高的內(nèi)容圖片/Object加上寬度的屬性可以減少頁(yè)面的局部重渲染
表現(xiàn)上
- 質(zhì)量99跟70的jpg在大多數(shù)情況下只有文件有大小不一樣。gif的也一樣,特別是小圖標(biāo),256色跟128色的差別是文件大。
- flash動(dòng)得太快吃CPU很大,控制每秒的幀數(shù)及動(dòng)畫的效果可以減少一些,如果把品質(zhì)用中低顯示會(huì)省很多資源,但這樣卻犧牲了效果。。quality屬性 有時(shí)選擇Autolow2 或者Autohigh會(huì)更適合,沒(méi)必要一直low 或者best,
- flash使用矢量圖會(huì)節(jié)省文件大小,但計(jì)算復(fù)雜的圖形跟動(dòng)畫時(shí)花的是CPU。復(fù)雜的太多濾鏡,則會(huì)占用大量?jī)?nèi)存,模糊濾鏡有減少些3。
- IE的濾鏡也是比較占用內(nèi)存,同時(shí)也有兼容性問(wèn)題。全屏的半透明很吃資源的。
- 2*2的圖片跟8*8的圖片大小差不多,但是平鋪背景2*2卻占用大很多。
- gif動(dòng)畫同樣有幀的概念,別把gif當(dāng)成flash來(lái)玩就行。
行為上
- 別為了使用一個(gè)$()引入整個(gè)pretotype或jQuery,它們有更多的作用。
- AJAX很帥。但是用xml會(huì)用上XML解析器,有人推薦用JSON,可是這樣要eval數(shù)據(jù),其實(shí)可以直接import已經(jīng)是對(duì)象的script來(lái)用。只是要多傳個(gè)對(duì)象名,或者把對(duì)象名寫死,或者像flickr那樣jsonFlickrApi({"xxx":"xxx"}),直接當(dāng)函數(shù)用,挖哈哈。
- 實(shí)現(xiàn)某些效果時(shí)能用visibility:hidden解決時(shí)就別用display:none來(lái)玩。
- 在這里強(qiáng)調(diào)js變量要注全局跟局部等等的意義并不大,JS復(fù)雜的地方也不是一兩句能說(shuō)得清的,關(guān)注大家關(guān)注月影的正在出版的新書吧。^^
其實(shí)這里有的內(nèi)容有不少跟 如何快速的呈現(xiàn)我們的網(wǎng)頁(yè) 相近,不過(guò)那篇是以處理服務(wù)端為主,但在很多時(shí)候,節(jié)省服務(wù)端資源消耗的同時(shí)也會(huì)節(jié)省客戶端的資源消耗。
再其實(shí),這篇已經(jīng)蹲在草稿箱里好久了,一直沒(méi)有時(shí)間去整理,F(xiàn)在給的也不是完整的,因?yàn)闆](méi)有完整,慢慢補(bǔ)充吧。
------------------------------------------------------------------------
- 產(chǎn)生問(wèn)題:雖然會(huì)引起 瀏覽器的模式問(wèn)題 ,但問(wèn)題是可以解決滴。參考Serving up XHTML with the correct MIME type ,派送XML頭瀏覽器不會(huì)容錯(cuò)顯示,出現(xiàn)錯(cuò)誤結(jié)構(gòu)會(huì)導(dǎo)致整個(gè)頁(yè)面無(wú)法顯法。
- Autolow: 優(yōu)先考慮速度,但是也會(huì)盡可能改善外觀。 回放開始時(shí),消除鋸齒功能處于關(guān)閉狀態(tài)。 如果 Flash Player 檢測(cè)到處理器可以處理消除鋸齒功能,就會(huì)打開該功能。
Autohigh:開始時(shí)回放速度和外觀兩者并重,必要時(shí)會(huì)犧牲外觀來(lái)保證回放速度。 回放開始時(shí),消除鋸齒功能處于打開狀態(tài)。如果實(shí)際幀頻降到指定幀頻之下,就會(huì)關(guān)閉消除鋸齒功能以提高回放速度。使用此設(shè)置可模擬“消除鋸齒”命令(“視圖”>“預(yù)覽模式”>“消除鋸齒”)。
- 模糊濾鏡:使用模糊濾鏡時(shí),如果用于 blurX 和 blurY 的值是 2 的整數(shù)次冪(例如 2、4、8、16 和 32),則可以加快計(jì)算速度,并且可以使性能提高 20% 到 30%(flash的幫助是介樣說(shuō)滴)。
本文鏈接:http://www.95time.cn/tech/site/2007/5106.asp
出處:藍(lán)色理想
責(zé)任編輯:moby
◎進(jìn)入論壇網(wǎng)站綜合、網(wǎng)頁(yè)制作版塊參加討論
|