php 页面加载进度条,HTML5/CSS3 网页加载进度条的实现,下载进度条等经典案例

今天给大家带来一个比较炫的进度条,进度条在一耗时操作上给用户一个比较好的体验,不会让用户觉得在盲目等待,对于没有进度条的长时间等待,用户会任务死机了,毫不犹豫的关掉应用;一般用于下载任务,删除大量任务,网页加载等;如果有使用html5为手机布局的,也可以用于手机中~

效果图:

41e4029abed62930c82ba2c07ef7e581.gif

1、html结构:

0%

简单分析下:

p.loadBar代表整个进度条

p.loadBar p 设置了圆角表框 ,p.loadBar p span 为进度 (动态改变宽度), p.loadBar p span i 为进度填充背景色(即width=100%)

HTML的结构,大家可以自己设计,只要合理,都没有问题~

2、CSS:body

{

font-family: Thoma, Microsoft YaHei, 'Lato', Calibri, Arial, sans-serif;

}

#content

{

margin: 120px auto;

width: 80%;

}

.loadBar

{

width: 600px;

height: 30px;

border: 3px solid #212121;

border-radius: 20px;

position: relative;

}

.loadBar p

{

width: 100%;

height: 100%;

position: absolute;

top: 0;

left: 0;

}

.loadBar p span, .loadBar p i

{

box-shadow: inset 0 -2px 6px rgba(0, 0, 0, .4);

width: 0%;

display: block;

height: 100%;

position: absolute;

top: 0;

left: 0;

border-radius: 20px;

}

.loadBar p i

{

width: 100%;

-webkit-animation: move .8s linear infinite;

background: -webkit-linear-gradient(left top, #7ed047 0%, #7ed047 25%, #4ea018 25%, #4ea018 50%, #7ed047 50%, #7ed047 75%, #4ea018 75%, #4ea018 100%);

background-size: 40px 40px;

}

.loadBar .percentNum

{

position: absolute;

top: 100%;

right: 10%;

padding: 1px 15px;

border-bottom-left-radius: 16px;

border-bottom-right-radius: 16px;

border: 1px solid #222;

background-color: #222;

color: #fff;

}

@-webkit-keyframes move

{

0%

{

background-position: 0 0;

}

100%

{

background-position: 40px 0;

}

}

此时效果为:

1edec7ffae41de6faccf31ee9bbbd445.png

整体布局就是利用position relative和absolute~

比较难的地方就是,渐变条的实现:

我们采用

a、从左上到右下的渐变

b、颜色分别为:0-25% 为#7ed047 , 25%-50% 为#4ea018 , 50%-75%为#7ed047 , 75%-100%为#4ea018

c、背景的大小为40px 40px 这个设置超过高度就行, 越大,条文宽度越宽

分析图:

bb8039b85c5ddbcda4c3b5610707a789.png

设置的原理就是上图了,同时可以背景宽度设置越大,条文宽度越大;

3、设置Js,创建LoadBar对象function LoadingBar(id)

{

this.loadbar = $("#" + id);

this.percentEle = $(".percent", this.loadbar);

this.percentNumEle = $(".percentNum", this.loadbar);

this.max = 100;

this.currentProgress = 0;

}

LoadingBar.prototype = {

constructor: LoadingBar,

setMax: function (maxVal)

{

this.max = maxVal;

},

setProgress: function (val)

{

if (val >= this.max)

{

val = this.max;

}

this.currentProgress = parseInt((val / this.max) * 100) + "%";

this.percentEle.width(this.currentProgress);

this.percentNumEle.text(this.currentProgress);

}

};

我们创建了一个LoadBar对象,同时公开了两个方法,一个设置最大进度,一个设置当前进度;比如下载文件最大进度为文件大小,当前进度为已下载文件大小。

4、测试

最后我们测试下我们的代码:$(function ()

{

var loadbar = new LoadingBar("loadBar01");

var max = 1000;

loadbar.setMax(max);

var i = 0;

var time = setInterval(function ()

{

loadbar.setProgress(i);

if (i == max)

{

clearInterval(time);

return;

}

i += 10;

}, 40);

});

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/417245.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

.Net 强名称签名程序集

项目——属性——签名——选中为程序集签名——选择强名称密钥文件——新建 重新编译即可多用于作为COM组件与其他程序交互强名称签名的程序集如果被篡改,那么CLR在加载该程序集进行完整性验证的时候就会失败。但是强名称可以通过其他工具去除。

观后感

看过视频之后,我个人有以下几点观后感: 1、刻意练习,刻意就是持续地做你不会做的事; 2、针对性的重复练习,学习是没有捷径的; 3、不断地挑战意外,不让自己处于“失控”状态; 4、让自…

java web项目中连接mysql数据库,javaweb之eclipse工程连接mysql数据库

javaweb之eclipse工程连接mysql数据库准备工作:1.在mysql官网下载mysqlconnection的jar包输入网址:mysql.com—点击DOWNLOADS——下拉选择MySQL Community (GPL) Downloads ——选择Connector/J——下载后解压——找到mysql-connector-java-8.0.22.jar2.…

Win7的市场份额终于超过XP了,以后可以逐渐考虑放弃ie6/7了!

Win7的市场份额终于超过XP了,以后可以逐渐考虑放弃ie6/7了! 开心啊,诸位web开发们…… 图片来源:http://thenextweb.com/microsoft/2012/09/01/windows-7-finally-overtakes-windows-xp-mac-os-x-overtakes-windows-vista/

写出漂亮的代码

转自:http://blog.csdn.net/fuyuwei2015/article/details/46552697 1)移除你没有用到的东西(就像上面建议的一样)。 2)简化必要的概念,避免不必要的概念。 3)移除不必要的抽象,用实际…

php 垂直搜死哦,垂直搜索(Vertical Search)的详细介绍

垂直搜索是相对于通用的搜索来说的,垂直搜索是通用搜索引擎的一种细化,垂直搜索专注于某一个特定行业的搜索,搜索的内容更加专一化,比如购物的内容,机械产品的内容,服务信息的内容等,是某一个行…

URL编码表一览

?退格TAB换行回车空格!"#$%&()*,-./%00%01%02%03%04%05%06%07%08%09%0a%0b%0c%0d%0e%0f%10%11%12%13%14%15%16%17%18%19%1a%1b%1c%1d%1e%1f%20%21%22%23%24%25%26%27%28%29%2a%2b%2c%2d%2e%2f0123456789:;<>?ABCDEFGHIJKLMNOPQRSTUVWXYZ[/]^_%30%31%32%33%34%…

SWIFT推送之本地推送(UILocalNotification)之二带按钮的消息

上一篇讲到的本地推送是普通的消息推送&#xff0c;本篇要讲一下带按钮动作的推送消息&#xff0c;先上个图瞅瞅&#xff1a; 继上一篇的内容进行小小的改动&#xff1a; 在didFinishLaunchingWithOptions方法内进行以下修改 123456789101112131415161718192021222324252627282…

java的input不能更改,无法将方法响应标头Content-Type更改为application / xml

尝试解决Twilio 12300错误&#xff1a;使用AWS的API网关(GET)和CloudFormation通过 aws cli 和Swagger部署Lambda(无服务器)应用程序时导致的内容类型无效 .我将集成响应主体映射模板> Content-Type设置为 application/xml 和模板#set($inputRoot $input.path(S))$inputRoo…

.Net 调用wordCOM组件转PDF

运行环境&#xff1a;office2010或office2007SaveAsPDFandXPS.exe补丁 x86x64系统环境均可。class Program{static void Main(string[] args){DOCConvertToPDF(AppDomain.CurrentDomain.BaseDirectory "/b.html", AppDomain.CurrentDomain.BaseDirectory "/aa…

树状数组基础

关于树状数组的讲解推荐《算法竞赛入门经典训练指南》 一维版本&#xff1a; 洛谷3374 分析&#xff1a;树状数组裸的模板题 1 #include<iostream>2 #include<cstdio>3 #include<cstring>4 using namespace std;5 const int maxn50000010;6 int c[maxn];7 in…

php pdo更新,php - 使用PDO和MySQL更新查询

我试图只用PDO编写更新查询&#xff0c;但我无法执行代码&#xff1f;try {$conn new PDO("mysql:host$hostdb; dbname$namedb", $userdb, $passdb);$conn->exec("SET CHARACTER SET utf8"); // Sets encoding UTF-8$conn->setAttribute(PDO::ATTR_…

jquery.easyui常用示例

消息框$.messager.alert("提示","法规重复标志更新成功&#xff01;");$.messager.confirm(Confirm,Are you sure you want to delete record?,function(r){ if (r){ alert(ok); } }); 翻页//初始化$(#pagination).pagination({total: actResult.Ro…

vue1升级到vue2的问题

router 不能用map方法了&#xff0c;需要改router的结构改为routers [ { // 当没有匹配路由时默认返回的首页 path:/index, component: index, authenticate:true }, { // 当没有匹配路由时默认返回的首页 path: /spa/, component: i…

python寻找字符串中的英文字符,python如何解析字符串中出现的英文人名?

这里有四个例子&#xff0c;结果来自google scholarstr1 "Jakes, William C., and Donald C. Cox. Microwave mobile communications. Wiley-IEEE Press, 1994."str2 "Schlegel, David J., Douglas P. Finkbeiner, and Marc Davis. \"Maps of dust infra…

win2003/XP删除桌面回收站

gpedit.msc 用户配置——管理模板——桌面——从桌面删除回收站——启用刷新桌面即可。

Spring Boot 学习笔记--整合Thymeleaf

1.新建Spring Boot项目 添加spring-boot-starter-thymeleaf依赖 1 <dependency> 2 <groupId>org.springframework.boot</groupId> 3 <artifactId>spring-boot-starter-thymeleaf</artifactId> 4 </dependency> 2.添加静态文件 根据…

mongo php update 写法,mongodb update 字符 操作

下面常用的update操作&#xff0c;用mongodb2.6.3版本测试的&#xff0c;官方发布的稳定版本2.4&#xff0c;建议用稳定版。 一&#xff0c;upsert表示如果有数据就不插入&#xff0c;没数据就插入 1&#xff0c;命令行下 db.peoples.update( //查找name等于tank的用户... { na…

js 打印

window.print(); 打印隐藏部分<style type"text/css" media"print">.noprint{display:none;}</style>

oracle 增加一个新分区,oracle 11g 新增分区

oracle 11g新增了间隔分区、虚拟列分区和引用分区。详细的介绍请查看官方文件&#xff1a;1. 间隔分区间隔分区是范围分区的一种扩展。在引入间隔分区之前&#xff0c;DBA 需要显式定义每个分区的值范围&#xff0c;随着分区值的增长可用分区会逐渐减少直到没有可使用的分区为止…