WEB性能優化

jopen 10年前發布 | 18K 次閱讀 性能

      作為一個前端工作人員,我們不可避免要進行web的性能優化。那么有哪些優化的方法呢?

      A、常規

      1 、減少HTTP請求,在網頁中圖片、css、javascript、flash等等,都會增加我們的HTTP請求,減少請求數能提高WEB的頁面響應時間;

       2、導入的css和js文件的位置,css放在head部分,js放在body的尾部;

       3、js/css/html代碼的壓縮;

       4、使用外部的 js/css,內聯的css和js其實比外部文件反應更快,那為什么要用外部呢?因為使用外部的css和技術可以讓瀏覽器緩存它,這樣不僅HTML文檔大小減少,而且不會增加HTTP請求數量。另外,外部的 js/css可以提高代碼的重用性;

       5、資源的延遲加載(懶加載);

$("img").lazyload

        6、預加載;

        7、緩存處理,使用localStorage。

        B、CSS項

        1、避免使用css表達式,因為它被重新極端的次數相當多;

        2、避免使用@import

        3、避免使用IE Filter;

        4、避免使用后代選擇器 ul>li ;

        5、利用css繼承機制;

        6、避免使用通配符選擇器;

        7、使用多重選擇器;

        8、CSS Sprites技術

        C、JavaScript項

        1、使用臨時變量(或數組)存放dom節點;

        2、批量操作時,使用字符串拼接,用innerHTML開銷更小,速度更快,同時內存也更安全;

        3、減少dom訪問,可以緩存已經訪問過的元素,刪除dom節點中不必要的節點(remove熾熱的())和對象;

        4、創建dom節點,在執行完 createElement 代碼后,應該馬上添加(append)到dom樹中;

        5、監聽dom事件,監聽父節點(事件冒泡)。

        D、HTML項

        1、避免使用iframe,因為它會導致頁面的重繪;

        2、減少節點數量;

        3、避免重繪和回流,布局變化引起重繪,元素變化(內容、樣式)導致回流;

        E、資源項

        1、圖片

        1-1、減少圖片數量(CSS Sprites);

        1-2、降低圖片質量(減小圖片大小);

        1-3、選擇適當的圖片樣式(jpg主要是攝影級照相類圖像,gif主要是動畫圖片,png杜宇透明無損耗的小文件是不錯的選擇);

        1-4、圖片的轉碼Base64(src="data:image/jpg;base64,...");

        2、避免使用flash,盡量用css3代替。

        F、壓縮工具

        1、jsmin壓縮代碼,不會驗證代碼語法;

        2、YUIcompressor 壓縮時會驗證語法,代碼優化。

        G、CDN(內容分發網絡

        CDN的好處在于

         1、不用擔心自己網站訪客,在任何時間、任何地點、任何網絡運營商,都能快速打開網站;

         2、各種服務器虛擬主機帶寬等采購成本,包括后期運維成本都會大大減少;

         3、給網站直接帶來的好處:流量、咨詢量、客戶量、成單量。

        

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!