js預(yù)加載和懶加載

js懶加載

意義

懶加載(LazyLoad)是前端優(yōu)化的一種有效方式鸭廷,能極大的提升用戶體驗象颖,圖片加載是其重點偷卧,如果加載圖片過多將大大增http請求次數(shù)或大小豺瘤,然而更多時候用戶并不會瀏覽到全部加載進來的圖片,這種代價是非常不值得的听诸,所以當(dāng)用戶瀏覽到當(dāng)前視口時再去加載相應(yīng)的圖片無疑是兩全其美的選擇坐求。

原理

只有img標簽中的src寫入了圖片的地址,加載頁面時才會請求圖片晌梨,所以使用懶加載時在src中并不寫入任何地址桥嗤,把圖片的真實地址放到data- (標簽內(nèi)部屬性可存數(shù)據(jù))屬性中,在js中綁定鼠標滾動事件仔蝌,其回調(diào)中遍歷所有圖片并作出判斷泛领,將出現(xiàn)在視口中的圖片的 'data-' 屬性保存的地址放到 'src' 中即可

實現(xiàn)

實現(xiàn)方式:原生js

HTML

引入一堆圖片src為空,地址寫在data-original中敛惊,onerror表示當(dāng)未加載圖片時顯示的臨時加載頁圖片

JavaScript

效果

當(dāng)圖片滾動到視口范圍內(nèi)才會加載該圖片??

js預(yù)加載


意義

與懶加載相反渊鞋,有時我們需要實現(xiàn)例如快速快速切換頁面、圖片之類的功能時瞧挤,能盡快的加載出我們所需的圖片會極大提升用戶體驗锡宋,這時用預(yù)加載將圖片先緩存到瀏覽器,用戶使用需顯示圖片時無疑會順暢很多

原理

在html中用img標簽

使用JavaScriptImgage對象

ajax請求圖片

preload.js插件

實現(xiàn)

1.使用html文檔中img標簽

執(zhí)行文檔時直接加載進來只不過讓其不顯示

2.使用Imgage對象

js中執(zhí)行到該語句后就會加載進來

3.使用ajax請求圖片

直接用ajax請求很好理解不貼代碼特恬,

優(yōu)點:ajax請求過程中能有更加詳細的操作

缺點:有跨域

4.?preload.js預(yù)加載插件

PreloadJS便于預(yù)先加載資源:圖像员辩、聲音、數(shù)據(jù)鸵鸥、或其他的JS

PreloadJS插件地址:http://www.createjs.cc/preloadjs/

PreloadJS提供了一個一致的方式預(yù)先加載在HTML應(yīng)用的內(nèi)容奠滑,以及預(yù)加載可以使用HTML標簽作為XHR完成。默認妒穴, PreloadJS 將嘗試使用XHR加載內(nèi)容宋税,因為它提供了進度和完成事件方面的更好支持,然而由于跨域的問題讼油,它可能仍然是優(yōu)選使用基于標簽的負載代替

這是官網(wǎng)上的例子杰赛,使用起來也很簡單,對預(yù)加載過程有更高的控制矮台,詳細了解請到官網(wǎng)學(xué)習(xí)

總結(jié)


預(yù)加載與懶加載的使用頻繁乏屯,理解起來也并不難根时,簡單學(xué)習(xí)之后做了此總結(jié)

王文健的博客筆記???前端性能優(yōu)化——JS懶加載與預(yù)加載????

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市辰晕,隨后出現(xiàn)的幾起案子蛤迎,更是在濱河造成了極大的恐慌,老刑警劉巖含友,帶你破解...
    沈念sama閱讀 222,104評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件替裆,死亡現(xiàn)場離奇詭異,居然都是意外死亡窘问,警方通過查閱死者的電腦和手機辆童,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來惠赫,“玉大人把鉴,你說我怎么就攤上這事《郏” “怎么了纸镊?”我有些...
    開封第一講書人閱讀 168,697評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長概疆。 經(jīng)常有香客問我逗威,道長,這世上最難降的妖魔是什么岔冀? 我笑而不...
    開封第一講書人閱讀 59,836評論 1 298
  • 正文 為了忘掉前任凯旭,我火速辦了婚禮,結(jié)果婚禮上使套,老公的妹妹穿的比我還像新娘罐呼。我一直安慰自己,他們只是感情好侦高,可當(dāng)我...
    茶點故事閱讀 68,851評論 6 397
  • 文/花漫 我一把揭開白布嫉柴。 她就那樣靜靜地躺著,像睡著了一般奉呛。 火紅的嫁衣襯著肌膚如雪计螺。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,441評論 1 310
  • 那天瞧壮,我揣著相機與錄音登馒,去河邊找鬼。 笑死咆槽,一個胖子當(dāng)著我的面吹牛陈轿,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 40,992評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼麦射,長吁一口氣:“原來是場噩夢啊……” “哼蛾娶!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起潜秋,我...
    開封第一講書人閱讀 39,899評論 0 276
  • 序言:老撾萬榮一對情侶失蹤蛔琅,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后半等,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,457評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡呐萨,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,529評論 3 341
  • 正文 我和宋清朗相戀三年杀饵,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片谬擦。...
    茶點故事閱讀 40,664評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡切距,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出惨远,到底是詐尸還是另有隱情谜悟,我是刑警寧澤,帶...
    沈念sama閱讀 36,346評論 5 350
  • 正文 年R本政府宣布北秽,位于F島的核電站葡幸,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏贺氓。R本人自食惡果不足惜蔚叨,卻給世界環(huán)境...
    茶點故事閱讀 42,025評論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望辙培。 院中可真熱鬧蔑水,春花似錦、人聲如沸扬蕊。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽尾抑。三九已至歇父,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間再愈,已是汗流浹背庶骄。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留践磅,地道東北人单刁。 一個月前我還...
    沈念sama閱讀 49,081評論 3 377
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親羔飞。 傳聞我的和親對象是個殘疾皇子肺樟,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,675評論 2 359

推薦閱讀更多精彩內(nèi)容