利用js編寫網(wǎng)頁進度條效果
一、基本思路
為了讓我們編寫的網(wǎng)頁進度條滿足現(xiàn)有需求,又足夠輕便,所以使用原生js寫一個構造函數(shù),為了見名知義,可以把該函數(shù)命名為”Loading”。該函數(shù)接收2個參數(shù),分別為arr、callback。其中arr定義圖片數(shù)組,callback定義執(zhí)行完成后回調函數(shù)。該構造函數(shù)內部,遍歷圖片數(shù)組加載圖片,每加載完一張圖片,修改進度條進度,直至全部加載完成,進度條進度為100%。
二、實現(xiàn)步驟
(1)先搭建好進度條的樣子,把html和css寫好。


寫完后預覽一下進度條的效果

(2)編寫Loading構造函數(shù)。在該構造函數(shù)中,把進度條的css和html在執(zhí)行進度條init方法時動態(tài)添加和渲染。至此,進度條模塊已經(jīng)編寫好,使用時只需要引入該構造函數(shù),并實例化一個對象。

(3)實例化一個進度條對象

三、改進
該組件的可擴展性稍弱,主要表現(xiàn)為進度條樣式上,可以根據(jù)不同進度條實例來定義進度條樣式。所以可以在構造函數(shù)中增加一個this.setCss方法,實現(xiàn)不同進度條實例的個性化。修改如下:

如果進度條顏色為紅色,不是默認的#01ffff,則在初始化前調用setCss方法。

頁面效果如下

四、總結
該進度條插件已經(jīng)開發(fā)完成,仍有很多可優(yōu)化的點,比如加載進度條的動畫可以更加優(yōu)雅,配置樣式時可以更簡潔,代碼的可讀性等。優(yōu)化無止境,同學仍需努力。
相關文章
一文看懂如何簡單實現(xiàn)節(jié)流函數(shù)和防抖函數(shù)
這篇文章主要給大家介紹了如何通過一文看懂簡單實現(xiàn)節(jié)流函數(shù)和防抖函數(shù)的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧2019-09-09
詳解webpack import()動態(tài)加載模塊踩坑
這篇文章主要介紹了詳解webpack import()動態(tài)加載模塊踩坑,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-07-07
利用weixin-java-miniapp生成小程序碼并直接返回圖片文件流的方法
這篇文章主要介紹了利用weixin-java-miniapp生成小程序碼并直接返回圖片文件流的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-03-03

