利用js編寫網(wǎng)頁進度條效果
一、基本思路
為了讓我們編寫的網(wǎng)頁進度條滿足現(xiàn)有需求,又足夠輕便,所以使用原生js寫一個構(gòu)造函數(shù),為了見名知義,可以把該函數(shù)命名為”Loading”。該函數(shù)接收2個參數(shù),分別為arr、callback。其中arr定義圖片數(shù)組,callback定義執(zhí)行完成后回調(diào)函數(shù)。該構(gòu)造函數(shù)內(nèi)部,遍歷圖片數(shù)組加載圖片,每加載完一張圖片,修改進度條進度,直至全部加載完成,進度條進度為100%。
二、實現(xiàn)步驟
(1)先搭建好進度條的樣子,把html和css寫好。
寫完后預(yù)覽一下進度條的效果
(2)編寫Loading構(gòu)造函數(shù)。在該構(gòu)造函數(shù)中,把進度條的css和html在執(zhí)行進度條init方法時動態(tài)添加和渲染。至此,進度條模塊已經(jīng)編寫好,使用時只需要引入該構(gòu)造函數(shù),并實例化一個對象。
(3)實例化一個進度條對象
三、改進
該組件的可擴展性稍弱,主要表現(xiàn)為進度條樣式上,可以根據(jù)不同進度條實例來定義進度條樣式。所以可以在構(gòu)造函數(shù)中增加一個this.setCss方法,實現(xiàn)不同進度條實例的個性化。修改如下:
如果進度條顏色為紅色,不是默認的#01ffff,則在初始化前調(diào)用setCss方法。
頁面效果如下
四、總結(jié)
該進度條插件已經(jīng)開發(fā)完成,仍有很多可優(yōu)化的點,比如加載進度條的動畫可以更加優(yōu)雅,配置樣式時可以更簡潔,代碼的可讀性等。優(yōu)化無止境,同學(xué)仍需努力。
相關(guān)文章
ECMAScript中var let const常見問題及區(qū)別詳解
這篇文章主要為大家介紹了ECMAScript中var let const常見問題及區(qū)別詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-02-02TypeScript中的類型斷言[as語法|<>語法]的使用
本文主要介紹了TypeScript中的類型斷言[as語法|<>語法]的使用,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-06-06基于Bootstrap漂亮簡潔的CSS3價格表(附源碼下載)
該價格表基于Bootstrap網(wǎng)格系統(tǒng)來進行布局,通過簡單的CSS3代碼來美化價格表,樣式非常的時尚漂亮,且能在不同屏幕下展示良好的效果,需要的朋友可以參考下2017-02-02統(tǒng)計出現(xiàn)最多的字符次數(shù)的js代碼
一小段代碼,經(jīng)常出現(xiàn)在面試筆試題中的:統(tǒng)計一個字符串中出現(xiàn)最多的字符的次數(shù),可以是英文或者數(shù)字。2010-12-12