圖片總共能夠分爲兩類,一個是CSS IMAGES,另外一個是產品圖片。css
CSS圖片如今採用的方式是圖片合併的方式,這樣能夠減小HTTP請求;初期的規劃是網站最通用的圖片合併到一張圖片上,具體某張頁面本身用到的,針對每張頁面再合併一張圖片,即一張頁面除去插件裏面帶過來的背景圖片外,最理想的狀況是保留兩張背景圖。可是如今狀況很不如意,主要緣由有如下幾點:前端
產品圖有兩種呈現方式,一個就是單獨展現在頁面中的,這樣的圖片處理方式是異步,就用lazyload,這個的處理方式相對簡單。瀏覽器
另一張是幻燈片,這種圖片用lazyload不能達到異步的效果,由於幻燈片咱們首次只會看到第一張圖片,這樣的話就得要改幻燈片,這個根據不一樣的幻燈而定吧。緩存
目前對DOM優化採用的方法是不渲染,即將對SEO不重要的內容用textarea或者script包裹,這樣的話他們在渲染時就會被當作字符串而不會解析成節點。前端優化
JS是除圖片外,對前端性能影響最大的一個方面,也是最難優化的。整體來講,JS對性能有影響體如今兩個階段,一個是JS的下載階段,一個是執行階段。異步
JS同步時,下載和執行階段解析器都會暫停,等待JS下載和執行;而jS異步時,JS下載不會暫停解析器,所以不會阻塞頁面,可是執行時,仍然會暫停解析器。因此,對JS處理方式通常是異步而且放在頁面底部。這樣能夠對頁面的影響降到最小。前端性能
JS另外一個難點就是頁面中的JS代碼的邏輯處理,能夠用dynaTrace AJAX跟蹤查看。模塊化
當呈現樹中的一部分(或所有)由於元素的規模尺寸,佈局,隱藏等改變而須要從新構建。這就稱爲迴流(其實我以爲叫從新佈局更簡單明瞭些)。每一個頁面至少須要一次迴流,就是在頁面第一次加載的時候。佈局
當呈現樹中的一些元素須要更新屬性,而這些屬性只是影響元素的外觀,風格,而不會影響佈局的,好比background-color。則就叫稱爲重繪。性能
這塊內容是和瀏覽器渲染方式息息相關的,有興趣的童靴能夠在網站多找些資料;這裏只介紹些平時咱們可能使用的一些會形成重繪&迴流的方法,及改進意見