本文实例讲述了js实现进度条的方法。分享给大家供大家参考。具体实现方法如下:
1.setTimeout和clearTimeout
</>code
- <html>
- <head>
- <title>进度条</title>
- <style type="text/css">
- .container{
- width:450px;
- border:1px solid #6C9C2C;
- height:25px;
- }
- #bar{
- background:#95CA0D;
- float:left;
- height:100%;
- text-align:center;
- line-height:150%;
- }
- </style>
- <script type="text/javascript">
- function run(){
- var bar = document.getElementById("bar");
- var total = document.getElementById("total");
- bar.style.width=parseInt(bar.style.width) + 1 + "%";
- total.innerHTML = bar.style.width;
- if(bar.style.width == "100%"){
- window.clearTimeout(timeout);
- return;
- }
- var timeout=window.setTimeout("run()",100);
- }
- window.onload = function(){
- run();
- }
- </script>
- </head>
- <body>
- <div class="container">
- <div id="bar" style="width:0%;"></div>
- </div>
- <span id="total"></span>
- </body>
- </html>
效果图:
2.setInterval和clearInterval
</>code
- <html>
- <head>
- <title>进度条</title>
- <style type="text/css">
- .processcontainer{
- width:450px;
- border:1px solid #6C9C2C;
- height:25px;
- }
- #processbar{
- background:#95CA0D;
- float:left;
- height:100%;
- text-align:center;
- line-height:150%;
- }
- </style>
- <script type="text/javascript">
- function setProcess(){
- var processbar = document.getElementById("processbar");
- processbar.style.width = parseInt(processbar.style.width) + 1 + "%";
- processbar.innerHTML = processbar.style.width;
- if(processbar.style.width == "100%"){
- window.clearInterval(bartimer);
- }
- }
- var bartimer = window.setInterval(function(){setProcess();},100);
- window.onload = function(){
- bartimer;
- }
- </script>
- </head>
- <body>
- <div class="processcontainer">
- <div id="processbar" style="width:0%;"></div>
- </div>
- </body>
- </html>
效果图:
3.setTimeout和setInterval区别
setTimeout() 只执行 code 一次。如果要多次调用,请使用 setInterval() ,setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭,或者让 code 自身再次调用 setTimeout()。
随着我们网站复杂度的增加,很多时候需要用户去等待一些比较耗时的操作,在等待的过程中,如果能有一些比较人性化的加载动画或者进度条提示用户当前执行的状态,那就能大大提升网站的用户体验度。下面给大家分享一些绚丽的JS动画加载和进度条插件,希望大家喜欢。
1、Spin.js
可以自定义动画加载图案的长度、宽度、粗细、速度等参数,非常灵活。
在线演示 / 源码下载
2、3款CSS3 Loading动画
3款基于CSS3的动画加载效果。
在线演示
3、Percentage Loader
一款轻量的 jQuery 进度条插件,以百分比的形式呈现加载进度,同时显示已加载内容的大小。
在线演示 / 源码下载
4、jQuery Progress Bar
在线演示 / 源码下载
5、Animated jQuery Progressbar Plugin
该jQuery插件可以显示当前的加载进度以及剩余时间。
在线演示 / 源码下载
6、Progressbar
这是基于 jQuery UI 的进度条插件,可以通过 jQuery UI 的主题功能定制外观。
希望本文所述对大家的javascript程序设计有所帮助。
如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛