小編給大家分享一下JavaScript實現簡單進度條效果的方法,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
具體內容如下
效果圖:

簡單說一下思路:
主要就是進度條的寬度的動態調整!要用到JS的間隔定時器 setInterval( )
setInterval( )
功能:每隔指定時間調用一次函數
參數:函數,時間間隔
返回值:定時器編號(數字)
想讓它到一定的寬度就停止,那么需要設定它的最大寬度,在它外面套一個有寬度的元素就可以啦!這樣的話控制它在父元素里的百分比就行了。
在函數里進行判斷是否道達指定寬度,沒有到達就增長,否則就停止。
為了便于理解,后面JS代碼中也有注釋
1.HTML結構
<div id="box"> <p id="progress"></p> //不斷增長的進度條 <span id=n>0%</span> //百分比的顯示 </div> <button id="btn">開 始</button> //按鈕
2.CSS樣式
<style>
#box{
width: 500px;
height: 30px;
border: black 2px solid;
position: relative;
}
#progress{
width: 0px;
height: 30px;
background: pink;
}
#btn{
width: 50px;
height: 30px;
}
#n{
position: absolute;
top: 5px;
right: 0;
}
</style>重點來啦!
3.JavaScript代碼
<script>
//通過id獲取元素
var progress = document.getElementById('progress')
var n = document.getElementById('n')
var btn = document.getElementById('btn')
//定義函數,并用元素的單擊事件觸發函數
btn.onclick = function(){
var w = 0 //定義變量,用來存儲進度條的長度
//啟動定時器
var t = setInterval(function(){
w += 10 //每隔指定時間,讓進度條長度增加10
if(w >= 100){ //判斷進度條的長度有沒有等于或大于指定長度
w = 100
clearInterval(t) //條件成立,清除定時器
}
progress.style.width = w + '%' //給元素賦值變化后的寬度
n.innerHTML = w + '%' //同時百分比也要增長
},100) //每隔0.1秒執行一次
}
</script>這是我的學習記錄,分享給大家
看完了這篇文章,相信你對“JavaScript實現簡單進度條效果的方法”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。