JavaScript基于定时器实现进度条功能实例
本文详细介绍如何利用JavaScript中的定时器机制实现网页进度条功能。通过解析setInterval和setTimeout的区别与用法,结合具体代码案例,演示如何控制进度条加载速度及停止逻辑,帮助开发者掌握前端动态效果实现技巧。
JavaScript基于定时器实现进度条功能实例
本文通过一个具体实例,讲解如何利用JavaScript中的定时器功能来制作进度条,供读者参考学习。
JavaScript中的定时器机制
JavaScript中的定时器机制
在JavaScript中,可以使用 window.setInterval() 方法来启动一个定时器。
1. setInterval(function, time):该方法用于每隔指定的时间(单位为毫秒)重复执行一次传入的函数。
此方法的特点是会持续、重复地执行指定的操作。
2. setTimeout:该方法用于在延迟指定时间后,执行某项操作。
如 setTimeout(function,time) 所示,setTimeout 执行后不会重复调用。
停止定时器的方法
对于 setTimeout 设置的定时器,可以使用 clearTimeout(对象) 来清除已设置的定时器对象。
对于 setInterval 设置的定时器,可以使用 clearInterval(对象) 来清除已设置的定时器对象。
进度条实现案例
以下是一个具体的应用案例:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>www.jb51.net js进度条</title>
<style type="text/css">
#outer/*外部*/
{
margin-top:100px;
border:solid black 1px;
background-color:white;
width:1004px;
height:54px;
}
#inner/*内部*/
{
background-color:red;
width:0px;/*首先将内部的宽度定为0,用show()来实现进度条!*/
height:50px;
margin-left:2px;
margin-top:2px;
}
</style>
<script language="javascript">
function show()
{
if(document.getElementById("inner").offsetWidth<1000)//offsetWidth实现的时候width是没有宽度的,而style.width实现的时候则有宽度(px)!
{
document.getElementById("inner").style.width=
document.getElementById("inner").offsetWidth+20+"px";//每次执行show()函数的时候宽度都会加上20!
console.log(document.getElementById("inner").style.width);//console 控制台 :可以在网页上看到width的变化(利用F12)
}
else
{
document.getElementById("inner").style.width=1000+"px";//如果大于1000px的话,只能将1000px赋值给border-width;!
stop();//此时就应该执行停止定时器的函数!
}
}
var timer;//定义在两个函数外面,因为两个函数都会用到!
function start()
{
timeer = window.setInterval(show,200);//每隔200ms调用一次show函数
}
function stop()
{
timer = window.clearInterval(timer);
}
</script>
</head>
<body onload="start()">
<div id="outer">
<div id="inner">
</div>
</div>
</body>
</html>
运行效果展示:

当程序运行时,网页上的进度条会开始加载,其加载速度的快慢取决于设定的时间参数。
如果您对JavaScript感兴趣,还可以参考本站的其他专题,如《JavaScript时间与日期操作技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》以及《JavaScript数学运算用法总结》。
希望本文提供的关于JavaScript程序设计的知识能对您有所帮助。
JS动态构建复杂嵌套JSON对象的方法
2026-11-05 15:41:52
JS负数取余为什么是负数?详解余数与模运算区别
2026-11-05 13:34:41
JS 解压出现乱码或报错怎么解决?
2026-11-05 12:32:38
JS 中 startsWith、indexOf 与正则判断字符串前缀的对比
2026-11-04 22:19:43
JS解析Excel后怎么将数据转换为JSON格式
2026-11-04 20:58:28
