去年是最忙碌的一年,實(shí)在沒時(shí)間寫博客了,看著互聯(lián)網(wǎng)行業(yè)中一個(gè)又一個(gè)人的倒下,奉勸大家,健康要放在首位,保重身體。
好了,言歸正傳,這是17年的第一篇博文,話說(shuō)這天又是產(chǎn)品同學(xué)跑過(guò)來(lái)問(wèn)我說(shuō):hi,lenny,你看現(xiàn)在市面上流行各種裝逼H5,隨便輸入點(diǎn)名字啥的就給我生成房產(chǎn)證了,這種還可以分享出去,傳播率可高了,或者你再看這里,一鍵生成邀請(qǐng)函,牛逼吧,要不你也幫我做一個(gè)這個(gè)功能,我去玩點(diǎn)傳播手段。
我看見效果后第一反映就是,肯定canvas進(jìn)行的圖片拼接,現(xiàn)在市面上流行的效果具體是如何實(shí)現(xiàn)的我沒有去看源碼,思路很清晰,于是晚飯后沒有下班,開始我的插件制作之旅了。
首先,我們需要思考,既然是圖片處理,那么就必然存在圖片下載,我們知道圖片的onload是異步回調(diào),所有的資源必須在下載完成后才可以進(jìn)行接下來(lái)的邏輯,前置資源下載的邏輯就很關(guān)鍵,我們不僅需要在onload事件回調(diào)后去處理我們后續(xù)的流程,同時(shí)需要在所有必須資源加載完成后才執(zhí)行,所以我們需要構(gòu)建一個(gè)資源數(shù)組大致如下:
[{ { name: 'bg', src: '../img/bg.jpg' }, { name: 'z', src: '../img/z.png' }]
為了獲得最終的complete事件,我們需要利用一個(gè)全局變量監(jiān)聽onload或者onerror次數(shù):
延伸閱讀
學(xué)習(xí)是年輕人改變自己的最好方式