Js 百分比进度条
【构想】
CSS3 + JS
CSS3控制进度
利用CSS3中的 @keyframes
JS实现百分比
根据CSS来调整,时间
【页面代码】
第一种:
默认直接进入就是下载
CSS代码
body {
background-color: #f5f7f9;
color: #6c6c6c;
font: 300 1em/1.5em;
}
.container {
left: 50%;
position: absolute;
top: 40%;
transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
}
/* PROGRESS */
.progress {
background-color: #e5e9eb;
height: 0.25em;
position: relative;
width: 24em;
}
#progress-bar {
animation-duration: 3s;
animation-name: width;
background-image: linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);
background-image: -webkit-linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);
background-size: 24em 0.25em;
height: 100%;
position: relative;
}
@keyframes width {
0%,
100% {
transition-timing-function: cubic-bezier(1, 0, 0.65, 0.85);
}
0% {
width:;
}
100% {
width: 100%;
}
}
.container .notice {
animation: change 5s linear 0s infinite;
font-size: 15px;
margin: 10px;
}
@keyframes change {
0% {
color: #4cd964;
}
25% {
color: #5ac8fa;
}
50% {
color: #007aff;
}
75% {
color: #5856d6;
}
100% {
color: #ff2d55;
}
}
HTML代码
<div class="container">
<div class="notice"id="notice">
奴家,正在~客官不要急啦~(づ ̄ 3 ̄)づ
</div>
<div class="progress">
<div id="progress-bar">
</div>
</div>
</div>
JS代码
window.onload = function() {
var progressBar = {
//初始化
init: function() {
var oBar = document.getElementById('progress-bar');
var oNotice = document.getElementById('notice');
var count = 0;
//百分比计算,根据css的来
var timer = setInterval(function() {
count++;
oBar.innerHTML = count + '%';
if (count === 100) {
oNotice.innerHTML = '客官,奴家好了~(✿◡‿◡)'
clearInterval(timer);
}
}, 30);
}
};
progressBar.init();
}
第二种:
进入不下载,点击下载开始下载,暂停则暂停,原理控制setInterval和cleanInterval
<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<title>进度条</title>
<style type="text/css">
#pro {
width: 0px;
height: 20px;
background-color: #cea;
text-align: center;
}
</style>
</head> <body>
<button onclick="down()">下载</button>
<button onclick="stop()">暂停</button>
<br />
<div id="pro"></div>
</body>
<script>
var count = 0;
var tid; function Progress() {
count++;
if (count == 101) {
Fn();
} else {
var oPro = document.getElementById("pro")
oPro.innerText = count + "%";
oPro.style.width = 3 * count + "px";
}
} function down() {
oStria = setInterval("Progress()", 100)
}
function stop(){
clearInterval(oStria)
} function Fn() {
clearInterval(oStria)
alert("下载完成")
}
</script> </html>
Js 百分比进度条的更多相关文章
- JS框架_(JQbar.js)柱状图动态百分比进度条特效
百度云盘 传送门 密码:q6rt 柱状图动态百分比进度条效果 <html> <head> <title>jqbar.js柱状图动态百分比进度条特效</titl ...
- css3圆形百分比进度条的实现原理
原文地址:css3圆形百分比进度条的实现原理 今天早上起来在查看jquery插件机制的时候,一不小心点进了css3圆形百分比进度条的相关文章,于是一发不可收拾,开始折腾了... 关于圆形圈的实现,想必 ...
- HTML5圆形百分比进度条插件circleChart
在页面中引入jquery和circleChart.min.js文件. <script src="path/to/jquery.min.js"></script&g ...
- nprogress.js 头部进度条使用方法
nprogress.js 头部进度条 引入CSS\JS <link rel="stylesheet" type="text/css" href=" ...
- BitBlt()函数实现带数字百分比进度条控件、静态文本(STATIC)控件实现的位图进度条、自定义进度条控件实现七彩虹颜色带数字百分比
Windows API BitBlt()函数实现带数字百分比进度条控件. 有两个例子:一用定时器实现,二用多线程实现. 带有详细注解. 此例是本人原创,绝对是网上稀缺资源(本源码用Windows AP ...
- 使用ajax实现简单的带百分比进度条
需求:当进行文件上传保存等操作时,能在页面显示一个带百分比的进度条,给用户一个好的交互体验 实现步骤 JSP页面 1.添加table标签 <table id="load" w ...
- js 实现进度条功能。
/** * 纯js进度条 * Created by kiner on 15/3/22. */ function progress(options){ this.w = (options &&a ...
- js控制进度条到达100%跳转界面一
进度条一般在手机上用到的比较广泛,刚好最近的项目也是一直在做手机站,这个特效是手机端的一个界面,现在我把改成pc端了,进度条的快慢速度和样式可自行调节,改动也是很方便的,不多说,看代码: <st ...
- js实现进度条
不多说,直接上代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
随机推荐
- jsp中使用原生js实现异步交互
Ajax的工作原理相当于在用户和服务器之间加了—个中间层,使用户操作与服务器响应异步化.并不是所有的用户请求都提交给服务器,像—些数据验证和数据处理等都交给Ajax引擎自己来做,只有确定需要从服务器读 ...
- Tensorflow[目录结构]
1 - Tensorflow源码目录结构 基于2018年5月28日github的tensorflow源码,即1.8版本 第一层: tensorflow: 核心代码目录. third_party:第三方 ...
- 使用yield返回IEnumber<T>集合
yield是对一种复杂行为的简化,就是将一段代码简化为一种简单的形式. 先看一下常规的写法,下面例子中,把找出字符串阵列中,某些元素包含有某些字符的元素. class Bi { public stri ...
- GridView控件中Checkbox实现单选
在GridView控件中,第0列有放一个CheckBox控件,现想实现对CheckBox进行单选. 先看看效果: 在ASPX页面,可以这样做: 有一点注意的是需要使用OnRowCreated事件. 在 ...
- python winpdb远程调试
1.使用rpdb2.start_embedded_debugger ,注意要将参数fAllowRemote 设置为True 2.winpdb前端GUI使用python2 3.rpdb兼容python2 ...
- VB6 加密解密字符串
Public Function EnCodeStr(ByVal password As String) As String Dim il_bit, il_x, il_y, il_z, il_len, ...
- 【php增删改查实例】第二十一节 - 用户修改功能
19.1 添加用户修改的按钮 打开userManage.html,找到新增按钮的地方: 我们不难发现,编辑按钮就差不多应该在新建用户的右边. 那么,假如我现在是新人,对这个项目本身就不太熟悉,那么我得 ...
- PV原语操作详解
from http://www.blogjava.net/wxqxs/archive/2009/05/10/277320.html PV原语通过操作信号量来处理进程间的同步与互斥的问题.其核心就是一段 ...
- 通过git命令行从github或服务器上克隆、修改和更新项目
项目开发时,为了方便版本管理,许多公司采用git来控制项目版本.简单介绍下: 第一步:在本地新建一个文件夹,作为本地仓库,如“test”.打开git bash,进入到该文件夹目录下,如下图: 第二步: ...
- CAD2020下载安装AutoCAD2020中文版下载地址+安装教程
AutoCAD2020中文版为目前最新软件版本,我第一时间拿到软件进行安装测试,确保软件正常安装且各项功能正常可以使用,立刻拿出来分享,想用最新版本的话,抓紧下载使用吧: 我把我用的安装包贡献给你下载 ...