摘要:再次更新預(yù)加載組件,更新點(diǎn)如下添加語(yǔ)法支持資源預(yù)加載組件隊(duì)列,可以支持隊(duì)列加載和回調(diào),也可以加載視頻或者音頻進(jìn)度條,可以動(dòng)態(tài)獲取進(jìn)度條信息支持標(biāo)簽的預(yù)加載,添加屬性即可原生訪問(wèn)資源預(yù)加載組件必填加載隊(duì)列容器,支持隊(duì)列加載以及加載一個(gè)
再次更新預(yù)加載組件,更新點(diǎn)如下:
添加ES6語(yǔ)法支持
React-Preload
preload資源預(yù)加載組件
隊(duì)列,可以支持隊(duì)列加載和回調(diào),也可以加載視頻或者音頻
進(jìn)度條,可以動(dòng)態(tài)獲取進(jìn)度條信息
支持img標(biāo)簽的預(yù)加載,添加pSrc屬性即可
原生ES5
demo
Installgit clone https://github.com/jayZOU/preload.git npm install npm run es6
訪問(wèn)http://localhost:8080/es6-demo
Examples/** * Preload 資源預(yù)加載組件 * @author jayzou * @time 2016-1-12 * @version 1.0.6 * @class Preload * @param {object} sources 必填 加載隊(duì)列容器,支持隊(duì)列加載以及加載一個(gè)隊(duì)列后傳入回調(diào) * @param {boolean} isDebug 選填 是否開(kāi)啟debug選項(xiàng),用于移動(dòng)端調(diào)試,默認(rèn)false * @param {object} connector 選填 后臺(tái)數(shù)據(jù)接口,可選擇同步或異步 * @param int loadingOverTime 選填 預(yù)加載超時(shí)時(shí)間,默認(rèn)15, 單位:秒 * @param {object} loadingOverTimeCB 選填 預(yù)加載超時(shí)回調(diào) * @param {object} wrap 選填 進(jìn)度條容器,返回記載進(jìn)度信息 * @param {object} completeLoad 選填 完成所有加載項(xiàng)執(zhí)行回調(diào),包括同、異步獲取數(shù)據(jù) **/ var preload = new Preload({ isDebug: true, sources: { imgs: { source: [ "../public/image/b2.jpg", "../public/image/b1.jpg" ], callback: function() { console.log("隊(duì)列1完成"); } }, audio: { source: [ "../public/audio/a.mp3", "../public/audio/b.mp3" ] }, imgs2: { source: [ "../public/image/b3.jpg", "../public/image/b4.jpg", "http://7xl041.com1.z0.glb.clouddn.com/OrthographicCamera.png", "http://7xl041.com1.z0.glb.clouddn.com/audio.gif", ], callback: function() { console.log("隊(duì)列3完成"); } } }, loadingOverTime: 3, loadingOverTimeCB: function(res) { console.log("資源加載超時(shí):", res); }, connector: { int1: { url: "http://localhost/test/index.php?callback=read&city=上海市", jsonp: true }, int2: { url: "http://localhost/test/index.php?callback=read&city=深圳市", jsonp: false, callback: function(data) { console.log("同步:", data); } } }, progress: function(completedCount, total) { // console.log(total); console.log(Math.floor((completedCount / total) * 100)); }, completeLoad: function() { console.log("已完成所有加載項(xiàng)"); } }); function read() { console.log("異步:", arguments[0]) }Notes
隊(duì)列名稱(chēng)不能重名,否則后面的隊(duì)列會(huì)覆蓋前面
ES6模式編寫(xiě),隊(duì)列之間同步加載,隊(duì)列內(nèi)資源為異步加載
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/85995.html
摘要:例如,將獲得最高優(yōu)先級(jí),而將獲得低優(yōu)先級(jí)或中優(yōu)先級(jí)。不帶屬性的的優(yōu)先級(jí)將會(huì)等同于異步請(qǐng)求。對(duì)使用屬性,不然將不會(huì)從中獲益。因此,在標(biāo)記中聲明以被掃描器掃描。 這是 Web 性能優(yōu)化的第 6 篇,上一篇在下面看點(diǎn)擊查看: Web 性能優(yōu)化:使用 Webpack 分離數(shù)據(jù)的正確方法 Web 性能優(yōu)化:圖片優(yōu)化讓網(wǎng)站大小減少 62% Web 性能優(yōu)化:緩存 React 事件來(lái)提高性能 We...
摘要:和可以用來(lái)指定資源是最高優(yōu)先級(jí)的。如果用戶進(jìn)入指定的鏈接,隱藏的這個(gè)頁(yè)面就會(huì)進(jìn)入馬上進(jìn)入用戶的視線。微軟最近也宣布會(huì)讓在上用類(lèi)似的技術(shù)。 預(yù)加載 現(xiàn)在的網(wǎng)絡(luò)情況雖然很樂(lè)觀,但是 defer和async 當(dāng)瀏覽器碰到 script 腳本的時(shí)候: 沒(méi)有 defer 或 async,瀏覽器會(huì)立即加載并執(zhí)行指定的腳本,立即指的是在渲染該 script 標(biāo)簽之下的文檔元素之前,也就是說(shuō)不等待后...
摘要:當(dāng)然并不是所有的頁(yè)面需要用到的外部域名都需要做這樣的域名解析,瀏覽器默認(rèn)會(huì)解析超鏈接屬性的里面的域名,并且你的網(wǎng)站域名還不能是,如果是,則需要設(shè)置請(qǐng)求頭或加入一段強(qiáng)制開(kāi)啟域名解析的標(biāo)簽。 廢話:異步加載和預(yù)加載一直都是前端優(yōu)化必備技能之一,今天我們就來(lái)深度解析一下常用的幾個(gè)關(guān)鍵點(diǎn)。 異步加載 廢話不多說(shuō),任何長(zhǎng)篇大論的教程都抵不過(guò)一張清晰明了的高清大圖來(lái)得好: showImg(http...
摘要:當(dāng)然并不是所有的頁(yè)面需要用到的外部域名都需要做這樣的域名解析,瀏覽器默認(rèn)會(huì)解析超鏈接屬性的里面的域名,并且你的網(wǎng)站域名還不能是,如果是,則需要設(shè)置請(qǐng)求頭或加入一段強(qiáng)制開(kāi)啟域名解析的標(biāo)簽。 廢話:異步加載和預(yù)加載一直都是前端優(yōu)化必備技能之一,今天我們就來(lái)深度解析一下常用的幾個(gè)關(guān)鍵點(diǎn)。 異步加載 廢話不多說(shuō),任何長(zhǎng)篇大論的教程都抵不過(guò)一張清晰明了的高清大圖來(lái)得好: showImg(http...
摘要:但這些加載器對(duì)于瀏覽器的加載優(yōu)先級(jí)隊(duì)列完全束手無(wú)策,這也使得他們不得不屈服于同樣的性能問(wèn)題。 參考文章:https://developer.mozilla.org... 先簡(jiǎn)單介紹下 link 標(biāo)簽作用 你可以在頁(yè)面 元素內(nèi)部使用 標(biāo)簽書(shū)寫(xiě)一些聲明式的資源獲取請(qǐng)求 preload (預(yù)加載) 有些資源是在頁(yè)面加載完成后即刻需要的,對(duì)于這種即刻需要的資源,你可能希望在頁(yè)面加載的生命...
閱讀 2814·2019-08-30 15:55
閱讀 2861·2019-08-30 15:53
閱讀 2299·2019-08-26 13:47
閱讀 2562·2019-08-26 13:43
閱讀 3161·2019-08-26 13:33
閱讀 2809·2019-08-26 11:53
閱讀 1801·2019-08-23 18:35
閱讀 804·2019-08-23 17:16