以下是自学it网--中级班上课笔记

网址:www.zixue.it

需要在chrome,ff,IE10下运行

html页面

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<title>HTML5 文件上传进度条</title>
<meta charset="utf-8" />
<meta name="description" content="" />
<meta name="keywords" content="" />
<script type="text/javascript">
/*
想得到传送文件的进度条
1:要能把文件内容打包并发送 FormData对象
2: 发送过程中,要能不断检测 已发送/全部 progress.onprogress
*/ </script>
<style type="text/css">
#progress{
border: 1px solid blue;
width:500px;
height:20px;
} #bar {
background:green;
height:20px;
width:0%;
} </style>
</head>
<body>
<h1>在chrome,ff,IE10运行</h1>
<form>
<input type="file" name="pic" /><br />
</form>
<div id="progress"><div id="bar"></div></div>
</body>
<script>
// 负责ajax发送数据
function up(fd) {
var xhr = new XMLHttpRequest();
xhr.open('POST','upfile.php',true); // 异步传输 // xhr.upload 这是html5新增的api,储存了上传过程中的信息
xhr.upload.onprogress = function (ev) {
var percent = 0;
if(ev.lengthComputable) {
percent = 100 * ev.loaded/ev.total;
//document.getElementById('progress').innerHTML = percent;
document.getElementById('bar').style.width = percent + '%';
}
} xhr.send(fd);
} document.getElementsByTagName('input')[0].onchange = function() {
//alert('你选择文件了');
//alert(this.files[0]); // 文件对象,html5新增的api var fd = new FormData(); // html5新增的对象,可以包装字符,二进制信息
fd.append(this.name,this.files[0]); up(fd); }
</script>
</html>

upfile.php页面

echo move_uploaded_file($_FILES['pic']['tmp_name'],'./upload/' . $_FILES['pic']['name']) ? 'OK':'fail';

如图所示:

HTML5文件上传还有进度条的更多相关文章

  1. html5 文件上传 带进度条

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  2. atitit.文件上传带进度条的实现原理and组件选型and最佳实践总结O7

    atitit.文件上传带进度条的实现原理and组件选型and最佳实践总结O7 1. 实现原理 1 2. 大的文件上传原理::使用applet 1 3. 新的bp 2 1. 性能提升---分割小文件上传 ...

  3. atitit. 文件上传带进度条 atiUP 设计 java c# php

    atitit. 文件上传带进度条 atiUP 设计 java c# php 1. 设计要求 1 2. 原理and 架构 1 3. ui 2 4. spring mvc 2 5. springMVC.x ...

  4. HTML5 + AJAX ( jQuery版本 ) 文件上传带进度条

    页面技术:HTML5 + AJAX ( jQuery) 后台技术:Servlet 3.0 服务器:Tomcat 7.0 jQuery版本:1.9.1 Servlet 3.0 代码 package or ...

  5. html5拖拽事件 xhr2 实现文件上传 含进度条

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  6. Flex4/Flash多文件上传(带进度条)实例分享

    要求 必备知识 本文要求基本了解 Adobe Flex编程知识和JAVA基础知识. 开发环境 MyEclipse10/Flash Builder4.6/Flash Player11及以上 演示地址 演 ...

  7. jquery 实现拖动文件上传加进度条

    通过对文件的拖动实现文件的上传,主要用到的是HTML5的ondrop事件,上传内容通道FormData传输: //进度条 <div class="parent-dlg" &g ...

  8. springMVC+ajax 文件上传 带进度条

    前端代码: <form id= "uploadForm"> <p >指定文件名: <input type="text" name= ...

  9. .Net neatupload上传控件实现文件上传的进度条

    1. 引入bin文件 (可以到neatupload官网下载,也可以到教育厅申报系统中找) 2. 将控件加入到工具栏,在工具栏中点鼠标右键,如图: 3. 加入neatuplaod这个文件夹(可以到nea ...

随机推荐

  1. 18-UIKit(Core Animation、广播设计模式)

    目录: 一.Core Animation 二.广播设计模式 回到顶部 一.Core Animation 1.  是什么? 底层的动画框架 2.  框架对比 UIKit           UI     ...

  2. SignalR系列教程:在MVC5中使用SignalR

    本章主要内容: 1:向MVC5添加SignaIr 2: 什么是集线器,如何创建集线器 3: 客户端通过jqery调用集线器 本文还是延续“SignaIR快速入门”中聊天室的例子进行讲解.首先我们通过V ...

  3. maven常见问题汇总

    package阶段得到的是build目录下编译后的类包(jar),install是把这个包和一些maven的元信息(比如pom.xml)复制到本地仓库,assembly一般是把build结果和一些资源 ...

  4. Codeforces 468D Tree

    题目 给出一棵带边权的树,求一个排列\(p\),使得\(\sum_{i=1}^{n}{dis(i, p_i)}\)的值最大,其中\(dis(v, u)\)表示\(v\)到\(u\)的距离. 算法 这题 ...

  5. Codeforces Round #189 (Div. 2)

    题目地址:http://codeforces.com/contest/320 第一题:基本题,判断mod 1000,mod 100.,mod 10是不是等于144.14.1,直到为0 代码如下: #i ...

  6. JNI 详细解释

    JNI事实上,Java Native Interface缩写,那是,java本地接口.它提供了许多API实现和Java和其它语言的通信(主要是C&C++). 或许不少人认为Java已经足够强大 ...

  7. The parent project must have a packaging type of POM

    在Eclipse中使用Maven添加模块时报错:The parent project must have a packaging type of POM 解决办法: 是将pom.xml 中的  < ...

  8. mmc生产运输投资问题

    本题目,有生产,运输和投资,由于能力不能满足需求, 要扩大生产规模.

  9. 操作系统的页面置换C++算法:OPT FIFO LRU CLOCK 计算缺页率

    暴力直接上代码,主要是用了vector来实现,有些方法比較费时,不太好,请各位大神斧正.这是个人的作业,  这是代码下载页http://download.csdn.net/detail/l631068 ...

  10. 由两代WIN8 Surface平板看微软心态

    要说win8平板的前景非常好,微软的两代surface做的真不错. 可是可是,微软就错在了把价格定的太高.为什么高,一是intel芯价格不低,二是每套win8和office微软得要价几百美金吧! 这两 ...