Javascript之圖片的延遲加載的實例詳解
作用:保證頁面打開的速度(3s之內打不開頁面,就已經算是死亡頁面了)
原理:
1)對于首屏內容中的圖片:首先給對應的區域一張默認圖片占著位置(默認圖片需要非常小,一般可以維持在5kb以內),當首屏內容都加載完成后(或者也可以給一個延遲時間),再開始加載真實圖片
2)對于其他屏中的圖片:也是給一張默認的圖片占位,當滾動條滾動到對應區域的時候,我們再開始加載真實的圖片
擴展:數據的異步加載:開始只把前兩屏的數據加載綁定出來,后面的數據不進行處理,當頁面滾動到對應區域的時候,在重新請求數據,然后綁定渲染數據
首先讓img標簽中的src為空,讓imgdisplay:none;在外面的div上的背景圖上面綁定一個背景圖片,然后等頁面加載完畢之后,在進行加載圖片;
使用定時器或者window.onload事件,然后把獲取到的url地址綁定到元素img標簽上的src上;但是,如果獲取的真實圖片地址是錯誤的src地址時,不僅控制臺會報錯,而且頁面會出現碎圖/叉子圖,影響視覺,以下為處理事件
var oImg = new Image; //創建一個臨時的img標簽 oImg.src = 真實的img的src地址 oImg.onload=function(){ //-> 當圖片能夠正常加載 img.src = this.src; img.syule.disolay = 'block'; oImg = null; //釋放空標簽 }
網站性能優化:
1、盡量減少向服務器端請求的次數"減少HTTP請求"
2、css/js文件進行合并
3、ICON圖片進行合并->雪碧圖/css script
4、圖片的延遲加載
5、數據的異步加載
6、在移動端,我國做的是一個簡單的宣傳頁,盡量的把css和js寫成內嵌式
以上就是Javascript之圖片的延遲加載的講解,如有疑問請留言或者到本站社區交流討論,共同進步,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
新聞熱點
疑難解答