国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

圖片的預(yù)加載和懶加載

SwordFly / 3360人閱讀

摘要:圖片的預(yù)加載是提升用戶體驗(yàn)而損失性能的一種做法,而懶加載的性能就比較好了,所以將兩個(gè)結(jié)合起來(lái)放到程序中是一種不錯(cuò)的選擇。

最近在做H5滑頁(yè)時(shí),遇到一些比較大的場(chǎng)景,動(dòng)輒二十、三十頁(yè),而圖片更是可恨的能達(dá)到上百個(gè),所以就會(huì)導(dǎo)致場(chǎng)景在加載的時(shí)候遇到網(wǎng)速比較慢的時(shí)候,用戶等待的時(shí)間特別長(zhǎng),這樣的話,就有可能導(dǎo)致一部分的用戶沒(méi)有耐心,而丟失這部分用戶,于是就有了這里的圖片的預(yù)加載和懶加載,記個(gè)筆記,如果后邊用到了,還可以來(lái)看看。
圖片的預(yù)加載是提升用戶體驗(yàn)而損失性能的一種做法,而懶加載的性能就比較好了,所以將兩個(gè)結(jié)合起來(lái)放到web程序中是一種不錯(cuò)的選擇。在用戶剛進(jìn)入場(chǎng)景的時(shí)候,先加載幾頁(yè)的圖片,開(kāi)始顯示給用戶,然后在用戶每翻一頁(yè)時(shí),再相應(yīng)的加載后面對(duì)應(yīng)的一頁(yè)中的圖片,這樣,如果用戶看了幾頁(yè)不想看了,后邊的圖片就不用加載了,減輕了服務(wù)器的壓力。而相應(yīng)的,用戶在進(jìn)入場(chǎng)景時(shí),等待的時(shí)間也減少了許多。

預(yù)加載的實(shí)現(xiàn) 將圖片寫(xiě)到css中,讓圖片不顯示

代碼:

html


    
    preloadByCss
    


    

通過(guò)chrome的調(diào)試工具分析網(wǎng)絡(luò)

在js中通過(guò)new Image對(duì)象,然后指定Image的src,通過(guò)Image的src還可以加載css、javascript

在chrome的調(diào)試工具中,可以進(jìn)行測(cè)試,這樣是否可以進(jìn)行加載,代碼如下:

在通過(guò)chrome的調(diào)試工具中的網(wǎng)絡(luò)分析欄,可以看到確實(shí)發(fā)送了請(qǐng)求,并且也得到了圖片

圖片的加載就可以正常進(jìn)行了,利用Image對(duì)象同時(shí)也可以加載css、javascript

返回的數(shù)據(jù)

使用ajax預(yù)加載,使用ajax的時(shí)候不僅可以加載圖片,還可以加載css、javascript。

關(guān)于預(yù)加載的三種方式可以查看CSDN中的文章:http://www.csdn.net/article/2013-10-15/2817187-3-ways-preload-images-c...

懶加載的實(shí)現(xiàn)

懶加載在一些大型的網(wǎng)站中見(jiàn)到的比較多,因?yàn)榫W(wǎng)站考慮到性能、流量及用戶體驗(yàn)方面的問(wèn)題,在用戶點(diǎn)擊開(kāi)網(wǎng)站的首頁(yè)的時(shí)候,網(wǎng)站想盡可能的顯示更多的信息給用戶,又要考慮到服務(wù)器的性能的問(wèn)題,還不能讓用戶等待的時(shí)間過(guò)長(zhǎng),所以這里就出現(xiàn)了圖片的懶加載。圖片的懶加載可以讓用戶按照需求從服務(wù)器上加載圖片,這樣即節(jié)省了用戶在代開(kāi)首頁(yè)時(shí)的等待時(shí)間,也節(jié)省了服務(wù)器的流量,所以是一個(gè)好的選擇。懶加載的基本思路就是不給img標(biāo)簽寫(xiě)src屬性,而是寫(xiě)到一個(gè)后邊可以操作的屬性中,如data-src中,然后在后邊需要加載的時(shí)候,加載圖片,圖片地址寫(xiě)到src中。
如下面的這段代碼:

html


    
    lazyload Demo
    





如果需要這個(gè)img顯示的時(shí)候,直接讓這個(gè)img顯示,然后把這個(gè)img的data-src給src就可以完成圖片的懶加載。
讓代碼運(yùn)行,然后打開(kāi)chrome的調(diào)試工具,然后查看網(wǎng)絡(luò)發(fā)現(xiàn)這里并沒(méi)有對(duì)這個(gè)圖片進(jìn)行加載:

然后在點(diǎn)擊圖片,發(fā)現(xiàn):

這樣原理上就實(shí)現(xiàn)了圖片的懶加載,但是在實(shí)際的生產(chǎn)環(huán)境中,肯定不會(huì)是這么簡(jiǎn)單的,去點(diǎn)擊一個(gè)按鈕,然后讓圖片加載出來(lái),大多數(shù)的應(yīng)用場(chǎng)景都是,圖片到了要顯示的屏幕中了,然后在去加載,或者說(shuō)再差一點(diǎn)就要到屏幕中,然后開(kāi)始加載。

實(shí)際生產(chǎn)環(huán)境中的使用

在實(shí)際的生產(chǎn)環(huán)境中考慮到自己寫(xiě)的預(yù)加載和懶加載的代碼的性能不高等問(wèn)題,這里就可以采用createJS中的preload.js和jquery.lazyload.js兩個(gè)插件完成資源的預(yù)加載和懶加載。
[preload.js官網(wǎng)]:http://createjs.com/preloadjs
[lazyload.js官網(wǎng)]:http://www.appelsiini.net/projects/lazyload
用法基本上看文檔就可以了,在使用的過(guò)程中遇到的一個(gè)問(wèn)題就是如何判斷懶加載已經(jīng)加載完成了,在網(wǎng)上沒(méi)有找到相關(guān)的資料(請(qǐng)?jiān)徫姨耍约壕蜕晕⒖戳讼略创a,發(fā)現(xiàn)其中有一個(gè)load的參數(shù),然后給它指定一個(gè)回調(diào)函數(shù),在函數(shù)中執(zhí)行加載完成要執(zhí)行的代碼就可以了。

后記

本人的JS水平實(shí)在是太菜了,請(qǐng)見(jiàn)諒。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/85884.html

相關(guān)文章

  • webpack4 系列教程(七): SCSS提取和懶加載

    摘要:教程所示圖片使用的是倉(cāng)庫(kù)圖片,網(wǎng)速過(guò)慢的朋友請(qǐng)移步原文系列教程七提取和懶加載。個(gè)人技術(shù)小站有空就來(lái)看看我一直都在本節(jié)課講解在中的提取和懶加載。值得一提的是,和在的懶加載上的處理方法有著巨大差別。 教程所示圖片使用的是 github 倉(cāng)庫(kù)圖片,網(wǎng)速過(guò)慢的朋友請(qǐng)移步>>> (原文)webpack4 系列教程(七): SCSS 提取和懶加載。 個(gè)人技術(shù)小站: https://godbmw.c...

    崔曉明 評(píng)論0 收藏0
  • Web優(yōu)化躬行記(5)——網(wǎng)站優(yōu)化

    摘要:最近閱讀了很多優(yōu)秀的網(wǎng)站性能優(yōu)化的文章,所以自己也想總結(jié)一些最近優(yōu)化的手段和方法。個(gè)人感覺(jué)性能優(yōu)化的核心是減少延遲,加速展現(xiàn)。初步以為是這個(gè)功能導(dǎo)致的服務(wù)掛起,詢問(wèn)相關(guān)操作人員,得到當(dāng)時(shí)的操作過(guò)程。  最近閱讀了很多優(yōu)秀的網(wǎng)站性能優(yōu)化的文章,所以自己也想總結(jié)一些最近優(yōu)化的手段和方法。   個(gè)人感覺(jué)性能優(yōu)化的核心是:減少延遲,加速展現(xiàn)。   本文主要從產(chǎn)品設(shè)計(jì)、前端、后端和網(wǎng)絡(luò)四個(gè)...

    233jl 評(píng)論0 收藏0
  • webpack4 系列教程(四): 單頁(yè)面解決方案--代碼分割和懶加載

    摘要:本節(jié)課講解打包單頁(yè)應(yīng)用過(guò)程中的代碼分割和代碼懶加載。不同于多頁(yè)面應(yīng)用的提取公共代碼,單頁(yè)面的代碼分割和懶加載不是通過(guò)配置來(lái)實(shí)現(xiàn)的,而是通過(guò)的寫(xiě)法和內(nèi)置函數(shù)實(shí)現(xiàn)的。個(gè)人網(wǎng)站原文鏈接系列教程四單頁(yè)面解決方案代碼分割和懶加載 本節(jié)課講解webpack4打包單頁(yè)應(yīng)用過(guò)程中的代碼分割和代碼懶加載。不同于多頁(yè)面應(yīng)用的提取公共代碼,單頁(yè)面的代碼分割和懶加載不是通過(guò)webpack配置來(lái)實(shí)現(xiàn)的,而是通過(guò)...

    jackwang 評(píng)論0 收藏0
  • 淺談網(wǎng)頁(yè)基本性能優(yōu)化規(guī)則小結(jié)

    摘要:雪碧圖內(nèi)聯(lián)圖片將站內(nèi)小圖標(biāo)合并成一張圖,使用定位截取對(duì)應(yīng)圖標(biāo)適當(dāng)使用內(nèi)聯(lián)圖片。瀏覽器緩存合理設(shè)置瀏覽器緩存是網(wǎng)頁(yè)優(yōu)化的重要手段之一。為什么要減少請(qǐng)求在性能優(yōu)化中減少請(qǐng)求的措施占了很大部分,比如使用雪碧 這篇文章主要介紹了淺談網(wǎng)頁(yè)基本性能優(yōu)化規(guī)則小結(jié)的相關(guān)資料,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧 針對(duì)瀏覽器網(wǎng)頁(yè)的一些優(yōu)化規(guī)則 頁(yè)面優(yōu)化 靜態(tài)資源壓縮...

    Aomine 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<