这篇文章主要介绍了bootstrap+jQuery实现的动态进度条功能,结合完整实例形式分析了bootstrap+jQuery实现动态进度条的具体步骤与相关操作技巧,需要的朋友可以参考下
本文实例讲述了bootstrap+jQuery实现的动态进度条功能。分享给大家供大家参考,具体如下:
此款进度条实现的功能:
1.利用了bootstrap的进度条组件。
a.在最外层的<div>中加入class .progress,在里层<div>加入class .progress-bar从而实现基本的进度条。
b.在外层<div>中加入class .progress-striped实现条纹进度条。
c.在内层<div>加入class .progress-bar-danger/warning/info/success 从而实现红色、黄色、蓝色、绿色
d.在外层<div>中加入class .active 实现动画效果
2.利用jQuery对进度条进度进行控制。
0-30时显示红色,30-60显示黄色,60-90显示绿色,90-100显示绿色
实现进度条暂停、停止、重新开始、继续功能
具体代码如下:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>...</title>
<!--在IE浏览器中运行最新的渲染模式-->
<meta http-equiv="X-UA-Compatible" content="IE-Edge">
<!--初始化移动浏览器显示-->
<meta name="viewport" content="width-device-width,inital-scale=1">
<link href="http://libs.baidu.com/bootstrap/3.0.3/css/bootstrap.min.css" rel="external nofollow" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="index.css" rel="external nofollow" >
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<script src="http://libs.baidu.com/bootstrap/3.0.3/js/bootstrap.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
var value = 0;
var time = 50;
//进度条复位函数
function reset( ) {
value = 0
$("#prog").removeClass("progress-bar-success").css("width","0%").text("等待启动");
//setTimeout(increment,5000);
}
//百分数增加,0-30时为红色,30-60为黄色,60-90为蓝色,>90为绿色
function increment( ) {
value += 1;
$("#prog").css("width",value + "%").text(value + "%");
if (value>=0 && value<=30) {
$("#prog").addClass("progress-bar-danger");
}
else if (value>=30 && value <=60) {
$("#prog").removeClass("progress-bar-danger");
$("#prog").addClass("progress-bar-warning");
}
else if (value>=60 && value <=90) {
$("#prog").removeClass("progress-bar-warning");
$("#prog").addClass("progress-bar-info");
}
else if(value >= 90 && value<100) {
$("#prog").removeClass("progress-bar-info");
$("#prog").addClass("progress-bar-success");
}
else{
setTimeout(reset,3000);
return;
}
st = setTimeout(increment,time);
}
increment();
//进度条停止与重新开始
$("#stop").click(function () {
if ("stop" == $("#stop").val()) {
//$("#prog").stop();
clearTimeout(st);
$("#prog").css("width","0%").text("等待启动");
$("#stop").val("start").text("重新开始");
} else if ("start" == $("#stop").val()) {
increment();
$("#stop").val("stop").text("停止");
}
});
//进度条暂停与继续
$("#pause").click(function() {
if ("pause" == $("#pause").val()) {
//$("#prog").stop();
clearTimeout(st);
$("#pause").val("goon").text("继续");
} else if ("goon" == $("#pause").val()) {
increment();
$("#pause").val("stop").text("暂停");
}
});
});
</script>
</head>
<body>
<div class="progress progress-striped active">
<div id="prog" class="progress-bar" role="progressbar" aria-valuenow="" aria-valuemin="0" aria-valuemax="100" style="width:0%;">
<span id="proglabel">正在启动,请稍后......</span>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-4 col-sm-6">
<button id="pause" class="btn btn-primary" value="pause">暂停</button>
<button id="stop" class="btn btn-primary" value="stop">停止</button>
<!--<button id="goon" class="btn btn-primary">继续<button>-->
</div>
</div>
</body>
</html>
PS:关于bootstrap布局,这里再为大家推荐一款本站的在线可视化布局工具供大家参考使用:
在线bootstrap可视化布局编辑工具:
http://tools.jb51.net/aideddesign/layoutit
希望本文所述对大家基于bootstrap的程序设计有所帮助。 |