日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
高性能WEB開(kāi)發(fā)之瘋狂的HTML壓縮

上一篇隨筆中網(wǎng)友 skyaspnet 問(wèn)我如何壓縮HTML,當(dāng)時(shí)回答是推薦他使用gzip,后來(lái)想想,要是能把所有的html,jsp(aspx)在運(yùn)行前都?jí)嚎s成1行未免不是一件好事啊。一般我們啟動(dòng)gzip都比較少對(duì)html啟動(dòng)gzip,因?yàn)楝F(xiàn)在的html都是動(dòng)態(tài)的,不會(huì)使用瀏覽器緩存,而啟用gzip的話每次請(qǐng)求都需要壓縮,會(huì)比較消耗服務(wù)器資源,對(duì)js,css啟動(dòng)gzip比較好是因?yàn)閖s,css都會(huì)使用緩存。我個(gè)人覺(jué)得的壓縮html的最大好處就是一本萬(wàn)利,只要寫好了一次,以后所有程序都可以使用,不會(huì)增加任何額外的開(kāi)發(fā)工作。

創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比岳塘網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式岳塘網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋岳塘地區(qū)。費(fèi)用合理售后完善,10余年實(shí)體公司更值得信賴。

在“JS、CSS的合并、壓縮、緩存管理”一文中說(shuō)到自己寫過(guò)的1個(gè)自動(dòng)合并、壓縮JS,CSS,并添加版本號(hào)的組件。這次把壓縮html的功能也加入到該組件中,流程很簡(jiǎn)單,就是在程序啟動(dòng)(contextInitialized or Application_Start)的時(shí)候掃描所有html,jsp(aspx)進(jìn)行壓縮。

壓縮的注意事項(xiàng):

實(shí)現(xiàn)的方式主要是用正則表達(dá)式去查找,替換。在html壓縮的時(shí)候,主要要注意下面幾點(diǎn):

1. pre,textarea 標(biāo)簽里面的內(nèi)容格式需要保留,不能壓縮。

2. 去掉html注釋的時(shí)候,有些注釋是不能去掉的,比如:

3. 壓縮嵌入式j(luò)s中的注釋要注意,因?yàn)榭赡茏⑨尫?hào)會(huì)出現(xiàn)在字符串中,比如: var url = "http://www.cnblogs.com"; // 前面的//不是注釋

去掉JS換行符的時(shí)候,不能直接跟一下行動(dòng)內(nèi)容,需要有空格,考慮下面的代碼:

 
 
 
  1. else  
  2. return; 

如果不帶空格,則變成elsereturn。

4. jsp(aspx) 中很有可能會(huì)使用嵌入一些服務(wù)器代碼,這個(gè)時(shí)候也需要單獨(dú)處理,里面注釋的處理方法跟js的一樣。

源代碼:

下面是java實(shí)現(xiàn)的源代碼,也可以 猛擊此處 下載該代碼,相信大家都看的懂,也很容易改成net代碼:

 
 
 
  1. show source 

使用注意事項(xiàng):

使用了上面方法后,再運(yùn)行程序,是不是發(fā)現(xiàn)每個(gè)頁(yè)面查看源代碼的時(shí)候都變成1行啦,還不錯(cuò)吧,但是在使用的時(shí)候還是要注意一些問(wèn)題:

1. 嵌入js本來(lái)想調(diào)用yuicompressor來(lái)壓縮,yuicompressor壓縮JS前,會(huì)先編譯js是否合法,因我們嵌入的js中可能很多會(huì)用到一些服務(wù)器端代碼,比如 var now = ,這樣的代碼會(huì)編譯不通過(guò),所以無(wú)法使用yuicompressor。

最后只能自己寫壓縮JS代碼,自己寫的比較粗燥,所以有個(gè)問(wèn)題還解決,就是如果開(kāi)發(fā)人員在一句js代碼后面沒(méi)有加分號(hào)的話,壓縮成1行就很有可能出問(wèn)題。所以使用這個(gè)需要保證每條語(yǔ)句結(jié)束后都必須帶分號(hào)。

2. 因?yàn)槭窃诔绦騿?dòng)的時(shí)候壓縮所有jsp(aspx),所以如果是用戶請(qǐng)求的時(shí)候動(dòng)態(tài)產(chǎn)生的html就無(wú)法壓縮。

原文鏈接:http://www.cnblogs.com/BearsTaR/archive/2010/05/17/html_compressor.html

系列專題:高性能WEB開(kāi)發(fā)應(yīng)用指南

【編輯推薦】

  1. 高性能WEB開(kāi)發(fā)之頁(yè)面呈現(xiàn)、重繪、回流
  2. 高性能WEB開(kāi)發(fā)之如何加載JavaScript
  3. 高性能WEB開(kāi)發(fā)之減少請(qǐng)求、響應(yīng)的數(shù)據(jù)量
  4. 讓W(xué)eb開(kāi)發(fā)者事半功倍的8個(gè)網(wǎng)站
  5. 20個(gè)新鮮的Web應(yīng)用 Web設(shè)計(jì)師不可錯(cuò)過(guò)

本文名稱:高性能WEB開(kāi)發(fā)之瘋狂的HTML壓縮
轉(zhuǎn)載注明:http://www.5511xx.com/article/ccsdpgc.html