Js操控----HTML5 <progress> 标签

简单模拟下下载进度跑条

 <h4>加载进度</h4>
<input type="button" value="下载" onclick="DownloadStart();" />
<progress id="Download" value="" max="100"></progress> <script>
function DownloadStart() {
alert("加载下载")
var Down = document.getElementById("Download");
var i = 0;
var DownSetTime;
DownSetTime = setInterval(function () {
i += 10
Down.value = i;
if (i == 100) {
clearInterval(DownSetTime);
alert("加载完成")
}
}, 500)
} </script>

当然了,真正的进度是肯定不能这样写的,因为实际上目前还没有一种方法可以判断进度的进程,因此只能让跑条一直跑,或者跑到一个顶峰然后停着等下载完成,直接跳了100%。

例一:进度条跑到90,然后等,等服务器或者其他地方传进来一个值,然后再一下子到100.

 <h4>加载进度</h4>
<input type="button" value="加载" onclick="LoadStart();" />
<progress id="Load" value="0" max="100"></progress> <script>
function LoadStart() {
var Complete = 0;//加载完成与否,初始为0,完成为1
var Load = document.getElementById("Load");//获取进度条
var i = 0;//声明跑条的初始值 //加载进度跑条
LoadSetTime = setInterval(function () {
i += 10;//每500毫米跑10份
Load.value = i;
if (i >= 90) {//当跑条到90时,就不跑了,停止
clearInterval(LoadSetTime);
return;
}
}, 500); //加载完成与否
GetData = setInterval(function () {
if (Complete == 1) {//当加载完成,也就等于1的时候
Load.value = 100;//跑条完成,到100
alert("加载完成");
clearInterval(GetData);//加载完成的计时器清除加载完成与否计时器
clearInterval(LoadSetTime);//加载完成的计时器清除加载进度跑条计时器
}
}); //从服务器获得加载内容完成与否的值,当然了你可以定义这个值从任何地方来,比如页面加载完成,动画加载完成,图片加载完成,一个动作执行完毕等等都可以,具体看你需要用在的地方
$.post(URL, function (data) {
if (parseInt(data) == 1) {
Complete = 1;
}
})
}
</script>

例二:进度条一直跑,然后等,等服务器或者其他地方传进来一个值,然后再一下子到100以后清除所有计时器,加载完成

     <h4>加载进度</h4>
<input type="button" value="加载" onclick="LoadStart();" />
<progress id="Load" value="0" max="100"></progress> <script>
function LoadStart() {
var Complete = 0;//加载完成与否,初始为0,完成为1
var Load = document.getElementById("Load");//获取进度条
var i = 0;//声明跑条的初始值 //加载进度跑条
LoadSetTime = setInterval(function () {
i += 10;//每500毫米跑10份
Load.value = i;
if (i == 100) {
i = 0;
}
}, 500); //加载完成与否
GetData = setInterval(function () {
if (Complete == 1) {//当加载完成,也就等于1的时候
Load.value = 100;//跑条完成,到100
clearInterval(GetData);//加载完成的计时器清除加载完成与否计时器
clearInterval(LoadSetTime);//加载完成的计时器清除加载进度跑条计时器
}
}); //从服务器获得加载内容完成与否的值,当然了你可以定义这个值从任何地方来,比如页面加载完成,动画加载完成,图片加载完成,一个动作执行完毕等等都可以,具体看你需要用在的地方
$.post(URL, function (data) {
if (parseInt(data) == 1) {
Complete = 1;
}
})
}
</script>

ok,简单介绍下js操控“progress”标签,具体看你用在什么地方。

作者:leona

原文链接:http://www.cnblogs.com/leona-d/p/5950280.html

版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接

JavaScript----Js操控-HTML5 <progress> 标签的更多相关文章

  1. JavaScript学习笔记-Js操控HTML5 <progress> 标签

    Js操控----HTML5 <progress> 标签 简单模拟下下载进度跑条 <h4>加载进度</h4> <input type="button& ...

  2. 【微信小程序项目实践总结】30分钟从陌生到熟悉 web app 、native app、hybrid app比较 30分钟ES6从陌生到熟悉 【原创】浅谈内存泄露 HTML5 五子棋 - JS/Canvas 游戏 meta 详解,html5 meta 标签日常设置 C#中回滚TransactionScope的使用方法和原理

    [微信小程序项目实践总结]30分钟从陌生到熟悉 前言 我们之前对小程序做了基本学习: 1. 微信小程序开发07-列表页面怎么做 2. 微信小程序开发06-一个业务页面的完成 3. 微信小程序开发05- ...

  3. HTML5每日一练之progress标签的应用

    progress标签:从名字上来看,估计大家也能猜到这个标签是什么标签了,没错,他是一个进度条.在HTML5中我们终于可以不用模拟了. <progress id="W3Cfuns_pr ...

  4. html5 video标签屏蔽右键视频另存为的js代码-HTML5教程

    点评:html5 video标签本身有下载功能但是在video区域内,点击右键可以将“视频另存为”下面是屏蔽右键视频另存为的js代码,有此需求的朋友不要错过   做HTML5的video标签,本身我们 ...

  5. ios加载html5 audio标签用js无法自动播放

    html5 audio标签在ios 微信浏览器中是无法自动播放的,最近在做一个小的项目遇到这个问题,安卓和pc都是正常的,唯独ios不行,查阅了很多资料,找到了以下方法,也许不是最好用的方法,如果有更 ...

  6. 让ie浏览器支持html5新标签的解决方法(使用html5shiv)

    没估计错的话旧版浏览器都是不识别这些新增的标签所以都是用行内元素来处理解决的,所以,有一个解决办法的突破口就是让它变成块状元素就不会处于同一行了,这样在新旧浏览器都是可以显示同样的效果,再者就是让浏览 ...

  7. 解决html5中标签出现的不兼容的问题

    HTML5的语义化标签以及属性,可以让开发者非常方便地实现清晰的web页面布局,加上CSS3的效果渲染,快速建立丰富灵活的web页面显得非常简单. HTML5的新标签元素有: <header&g ...

  8. 【HTML5】如何处理HTML5新标签的浏览器兼容版问题

    HTML5规范毕竟是刚刚才定义完成的规范,还有一些浏览器并不能支持其中的新标签和新属性,尤其是IE8及以下版本浏览器.以下介绍一些在页面中使用HTML5新标签的实践方法,目的是让HTML5中的新标签在 ...

  9. HTML语义化:HTML5新标签——template

    一.前言 当我们使用String-base的模板引擎(如Handlebars.js等)时,要么就通过外部文件存放模板文本,需要时再通过XHR或script标签加载进来:要么通过<script t ...

随机推荐

  1. TypeScript的4种编译方式

    1.手动编译 1.1.首先找到TypeScript的安装目录,我的在"C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0".

  2. jQuery属性/CSS使用例子

    jQuery属性/CSS 1..attr() 获取匹配的元素集合中的第一个元素的属性的值  或 设置每一个匹配元素的一个或多个属性. 例1:获取元素的属性的值 <p title="段落 ...

  3. Jdk 环境搭建

    在安装完jdk后,还需要对jdk的环境变量进行配置才能正常使用,下面教大家如何配置jdk环境变量: 1.右键选择 计算机→属性→高级系统设置→高级→环境变量

  4. iframe大小自适应

    前几天,舍友去某互联网公司面前端研发工程师.回来后,他就跟我们聊了下面试官给他出的题.其中,有一道题是“如何实现iframe高度的自适应?”.好吧,我承认,我听到iframe这个词的第一反应就是:这个 ...

  5. TeamCity实战(1):准备工作

    环境: Windows Server 2008 R2 SP1(不会再有SP2,参考这里:http://www.techspot.com/news/50599-microsoft-wont-releas ...

  6. MS SQL错误:SQL Server failed with error code 0xc0000000 to spawn a thread to process a new login or connection. Check the SQL Server error log and the Windows event logs for information about possible related problems

          早晨宁波那边的IT人员打电话告知数据库无法访问了.其实我在早晨也发现Ignite监控下的宁波的数据库服务器出现了异常,但是当时正在检查查看其它服务器发过来的各类邮件,还没等到我去确认具体情 ...

  7. WebForm(四)——Repeater控件(重要、好用)

    Repeater控件,可以用来一次显示一组数据项.比如,可以用它们显示一个数据表中的所有行.             Repeater控件完全由模板驱动,提供了最大的灵活性,可以任意设置它的输出格式. ...

  8. SQLite学习笔记(六)&&共享缓存

    介绍 通常情况下,sqlite中每个连接都会一个独立的pager对象,pager对象中管理了该连接的缓存信息,通过pragma cache_size指令可以设置缓存大小,默认是2000个page,每个 ...

  9. 设计模式C#实现(十四)——责任链模式

    意图 0 适用性 1 结构 2 实现 3 效果 4 参考 5 意图 使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系.将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象 ...

  10. Redis学习资源

    1 redis官方网站 http://redis.io/ 2 redis中文 http://redisdoc.com/ 3 redis的设计与实现 http://www.redisbook.com/ ...