日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

JS实现进度条

發布時間:2024/1/1 javascript 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JS实现进度条 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

超時函數控制,每隔一秒鐘就會執行指定的超時函數,再指定的超時函數里設置進度條的標簽的長度,即可完成進度條的顯示。

<!DOCTYPE html> <html> <head><meta charset="utf-8"><title>進度條設計</title><style>#frame{overflow: hidden;width: 300px;border-radius: 50px;border:2px solid black;border-bottom-width: 4px;border-top-width: 3px;}.border{margin:15px 30px;border:2px solid black;height: 30px;overflow: hidden;position: relative;}.bar{width: 5%;height: 100%;background:pink;border-top-right-radius: 10px;border-bottom-right-radius: 10px;transition:all 0.1 ease-in-out 0s;}.percentage{position: absolute;left: 0;top: 0;width: 100%;text-align: center;padding:5px;color:#f9ec75;font-weight: bold;}</style><script>window.setTimeout('update();', 0);function update(){var frm = document.getElementById('frame');var list = document.getElementsByTagName('div');var bar;for(var i=0;i<list.length;i++){if(list[i].className == 'bar'){bar = list[i];}}if(bar.style.width == ''){bar.style.width = '6%';}else{bar.style.width = parseInt(bar.style.width)+1+'%';}bar.nextSibling.nextSibling.textContent = parseInt(bar.style.width)-5+'%';if(bar.style.width != '105%'){window.setTimeout('update();', 100);}}</script> </head> <body> <div id="frame"><div class="border"><div class="bar"></div><div class="percentage">0%</div></div> </div> </body> </html>

效果圖:



代碼分析:
最內部div用戶繪制進度條,其外面的div標簽用于繪制裝載進度條的狹槽,最外部的div標簽用于繪制外殼效果。
在本程序的運行中,發現有停滯效果,這是因為JavaScript程序和CSS3的transition屬性不一致所造成的。如果希望進度條過度順利可以取消超時函數里面的超時重設,并直接將進度條設置為超過100%,并將transition屬性的變化時間設置為較長的時間即可。

總結

以上是生活随笔為你收集整理的JS实现进度条的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。