js實(shí)現(xiàn)數(shù)字跳動(dòng)到指定數(shù)字
本文實(shí)例為大家分享了js實(shí)現(xiàn)數(shù)字跳動(dòng)到指定數(shù)字的具體代碼,供大家參考,具體內(nèi)容如下
運(yùn)行結(jié)果如下:
<!DOCTYPE html> <head> <title>js實(shí)現(xiàn)數(shù)字跳動(dòng)到指定數(shù)字</title> <style> h1 {font-size: 150px;text-align:center;} p {text-align:center;} button {font-size:40px;} </style> </head> <body> <h1 id="number">0</h1> <p> <button onclick="start()">開(kāi)始計(jì)數(shù)</button> </p> </body> <script> /* * startNum 代表要跳動(dòng)的初始數(shù)字 * targetNum 代表要跳動(dòng)到的數(shù)字 * time 代表要跳動(dòng)需要花費(fèi)的時(shí)間 * selector 代表要跳動(dòng)元素的選擇器 */ const $setJumpNumber = (startNum, targetNum, time = 1, selector) => { let dom = document.querySelector(selector); let originNum = startNum; let stepNum = 0; let timeNum = time; dom.innerHTML = startNum; let timeId = setInterval(() => { if (originNum < targetNum) { timeNum -= 0.001; let strNum = originNum.toString(); // 數(shù)字比較少的時(shí)候直接用 + 1; 數(shù)字很大直接 +1 要很久才能調(diào)到最對(duì)應(yīng)的數(shù)字,所有后三位數(shù)隨機(jī)跳動(dòng)的方式進(jìn)行模擬生成 if (targetNum.toString().length < 6) { stepNum += 1; // 這樣才可以實(shí)現(xiàn)越跳越快的效果 originNum = originNum + stepNum; dom.innerHTML = originNum; } else { stepNum += 500; // 這樣才可以實(shí)現(xiàn)越跳越快的效果 originNum = originNum + stepNum; dom.innerHTML = strNum.substr(0, strNum.length - 3) + Math.floor(Math.random()*10) + Math.floor(Math.random()*10) + Math.floor(Math.random()*10); } } else { dom.innerHTML = targetNum; clearInterval(timeId); } }, timeNum); }; function start () { $setJumpNumber(11, 218983423, 1, 'h1'); }; </script> </html>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
js生成隨機(jī)數(shù)(指定范圍)的實(shí)例代碼
下面小編就為大家?guī)?lái)一篇js生成隨機(jī)數(shù)(指定范圍)的實(shí)例代碼。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-07-07寫(xiě)了個(gè)XML+Tree無(wú)窮樹(shù)js版
寫(xiě)了個(gè)XML+Tree無(wú)窮樹(shù)js版...2007-09-09js change,propertychange,input事件小議
github上關(guān)于mootools一個(gè)issue的討論很有意思,所以就想測(cè)試記錄下。感興趣的可以點(diǎn)擊原頁(yè)面看看2011-12-12JavaScript之Getters和Setters 平臺(tái)支持等詳細(xì)介紹
現(xiàn)在,JavaScript的Getters和Setters使用非常廣泛,它和每個(gè)JavaScript開(kāi)發(fā)者的切身利益息息相關(guān),我們先來(lái)快速了解什么是Getters和Setters,以及它們?yōu)槭裁春苡杏?然后,我們來(lái)看看現(xiàn)在都有哪些平臺(tái)支持Gettets和Setters2012-12-12JS實(shí)現(xiàn)旋轉(zhuǎn)木馬輪播案例
這篇文章主要為大家詳細(xì)介紹了JS實(shí)現(xiàn)旋轉(zhuǎn)木馬輪播案例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10uni-app h5端在jenkins構(gòu)建報(bào)錯(cuò)解決
這篇文章主要為大家介紹了uni-app h5端在jenkins構(gòu)建報(bào)錯(cuò)解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06