W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
本文檔為您詳細闡釋MIP頁面的加速原理
為了去除臃腫的客戶端腳本,MIP文件不允許自定義JavaScript;對一些強依賴JavaScript的功能(如:廣告、統(tǒng)計和交互),MIP提供與MIP runtime兼容的封裝好的組件來實現(xiàn)。
JavaScript 引用原則:
目前MIP不允許用戶自定義JavaScript,需要用MIP 組件的形式引進來,從而確保安全性和性能表現(xiàn)
可以引用mip-iframe來引入實現(xiàn)部分富交互的功能,這樣,即使開發(fā)時使用最影響性能的document.write,也不會影響主頁面的渲染
MIP組件是開源的,允許開發(fā)者自定義功能組件,項目也將持續(xù)提供多樣的組件,以適應不通的需求
在頁面開發(fā)時,資源常常不會被設(shè)定寬高,特別是使用廣告或者通過調(diào)用 `document.write() 注入的時候。由于資源大小不能確定,頁面經(jīng)常要進行反復重新的繪制;
現(xiàn)在,MIP要求將所有的資源(廣告、圖片、音頻和視頻)標明尺寸。當資源真正加載時,所有資源大小可以被立即推斷出并迅速的用于計算頁面布局,加載中的資源將無縫呈現(xiàn),不必因為頁面頻繁更新布局而影響到用戶的閱讀體驗。
開發(fā)者的任何自定義腳本,都需要用MIP的tag反饋給MIP,例如mip-ad、mip-iframe等,這些方式不會阻塞頁面的layout和渲染。
MIP runtime會控制外部資源的額加載來確保其高效性,從而使用戶想閱讀的內(nèi)容盡快出現(xiàn)在屏幕中。
MIP提倡網(wǎng)頁能給用戶直接簡單的體驗,但這并不意味著MIP限制了頁面的生動和有趣。MIP runtime提供了高度優(yōu)化的被封裝的JavaScript,開發(fā)者無需投入過多精力去實現(xiàn)復雜的交互功能。
css的加載,會阻止頁面的渲染,css內(nèi)聯(lián)可以減少客戶端的開銷。
MIP只允許用transforms和opacity來完成動畫效果,當動畫能在GPU上執(zhí)行時,僅觸發(fā)渲染層合并。
MIP另一個重要的意義在于能夠幫站長加速網(wǎng)頁,百度將會把MIP網(wǎng)頁緩存到百度CDN中。只要符合MIP標準,都可以使用MIP緩存。
MIP是一個開源項目,所有的標準并非一成不變。我們會持續(xù)不斷進行優(yōu)化,期待您的共同參與!
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: