以昆明大首頁為例(http://map.fang.com/km3.html),主要優化的地方是:
(1)JS代碼 改為模塊化壓縮異步合并加載,優化JS文件加載順序。(用seajs作為js文件加載管理工具)修改網頁中的onclick為事件綁定形式。(例如去掉onmouseover="show_menuc('t01','ti01',1,3,'s1','s2')"代碼,改為new menu('t01','ti01','s1','s2');)
(2)圖片改為延遲加載(除首屏外)(具體詳見下面說明)
(3)CCS 壓縮處理
(4)HTML部分壓縮處理
(5)對科捷JS廣告也做分級處理。(具體詳見下面說明)
(6)網頁中用到的JS文件也作了分級處理(首屏JS優先加載)
?
?
附1:圖片具體處理方式:
其中圖片延遲加載的具體邏輯是圖片作了分級區別處理:
0級:首屏的圖片,及時加載。
1級:除首屏外的圖片,延遲加載。具體做法就是當網頁加載完成后,不再自動加載,而改為事件偵聽的方式,當偵聽到鼠標移動(mousemove)或者頁面滾動條滾動(scroll)才開始逐步加載。
?
附2 :科捷JS廣告處理方式(通過對網頁的分析,發現首頁中科捷JS廣告比較多有41處調用。占用了很大部分加載時間,因此優化廣告加載方式是首頁優化的一個重要組成部分)
(1).修改目前JS方式調用方式(<script language="JavaScript1.1" src=" http://show3.fang.com/afp/door/;ap=s45c63155cf174460001;ct=js;pu=p28ed0b92e3713250001;/? " charset="utf-8"></script>)為后端接口形式,并緩存5分鐘(已問過于總,可以接受5分鐘緩存時間)
http://show3.fang.com/afp/door/;ap=s45c63155cf174460001;ct=xml;pu=p28ed0b92e3713250001;/ ?
這種方式需要科捷那邊配合修改。
(2).廣告也做分級處理,(首屏相關的廣告為0級,其他部分的為1級),廣告中的圖片采用和附1中描述的相同的圖片處理策略,將會明顯提升首屏用時,整體性能也會有所提升。
(3).大首頁首屏,大搜索框背景廣告有多個時,第一個廣告圖片作0級處理,其他圖片作1級處理。
?
附3:相關工具
JS & CSS壓縮處理 http://gpbmike.github.io/refresh-sf/
HTML壓縮處理 http://kangax.github.io/html-minifier/
seajs 官網 http://seajs.org/
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
