頁面級優化
一.減少http請求
(1)合理設定http
快取:變化的資源可以直接通過http header
中的expires
設定乙個很長的過期頭
; 變化不頻繁而又可能會變的資源可以使用last-modifed
來做請求驗證。
在**根目錄 .htaccess
中加入以下**
expiresactive on
expiresdefault
「access plus 1 year
」這段**的意思是對 jpg|gif|png|css|js
傳送 header
快取頭,進行一年的快取、在瀏覽器不使用
ctrl+f5
強制重新整理時,會一直快取到時間時間結束,唯一遺憾的是如果你更改了
js或者
css檔案必須把以前的路徑或者檔名更改,可以這樣
base.js?ver=(x)
這種方式下次瀏覽器就會自動讀取並快取。
(2)資源合併與壓縮:如果可以的話,盡可能的將外部的指令碼、樣式進行合併,多個合為乙個。另外,css
、j**ascript
、image
都可以用相應的工具進行壓縮,壓縮後往往能省下不少空間。
(3)css sprites
(4) lazy load image:這條策略實際上並不一定能減少http
請求數,但是卻能在某些條件下或者頁面剛載入時減少
請求數。對於而言,在頁面剛載入的時候可以只載入第一屏,當使用者繼續往後滾屏的時候才載入後續的。這樣一來,假如使用者只對第一屏的內容感興趣時,那剩餘的請求就都節省了。
有啊首頁曾經的做法是在載入的時候把第一屏之後的位址快取在textarea
標籤中,待使用者往下滾屏的時候才」惰性
」載入。
二.將外部指令碼置底
三.非同步執行inline
指令碼
由於瀏覽器在頁面處理方面是單執行緒的,當inline
指令碼在頁面渲染之前執行時,頁面的渲染工作則會被推遲。簡而言之,
inline
指令碼在執行的時候,頁面處於空白狀態。鑑於以上兩點原因,建議將執行時間較長的
inline
指令碼非同步執行,非同步的方式有很多種,例如使用
script
元素的defer屬性(
存在相容性問題和其他一些問題,例如不能使用
document.write)
、使用settimeout
,此外,在
html5
中引入了
web workers的機制,恰恰可以解決此類問題
四.lazy load j**ascript
五.減少不必要的http
跳轉
前端頁面優化
語義化 與seo相關 可讀性 利於維護 拓展性頁面載入速度 檔案大小,請求次數,載入方式,效能 語義化影響seo 搜尋引擎優化 以及 自然排名 語義化標籤 h1 h6 p ul li ol dl dt dd a img table small strong 頁面主要內容,乙個頁面只能使用一次。如果是...
前端頁面效能優化
最近參加了兩次社招,發現社招面試都會問到效能優化以及框架原理。當中效能優化即使我知道好幾種,然而我面試時總是很容易想不起來,只答出了兩三種。因此,寫一篇部落格來對效能優化做一下研究,加深理解。對於前端效能優化自然要關注首屏開啟速度,而這個速度,很大因素是花費在網路請求上,那麼怎麼減少網路請求的時間呢...
前端小遊戲頁面效能優化
公司是做教育類遊戲開發,以前是用flash製作,現在開始使用createjs框架開發canvas遊戲。今天突然收到乙個任務 遊戲在ipad2下面遊戲會打不開,然後自動重新整理,再載入不出來,然後再重新整理,陷入了死迴圈 通過度娘得知此問題是由越獄或記憶體引起的。排除越獄可能 因為沒有越獄 剩下就是記...