当前位置:首页 » 文件管理 » html5上传插件

html5上传插件

发布时间: 2022-03-11 19:54:49

1. 怎样用html5实现拖拽上传文件

,首先要判断拖入的文件是否符合要求,包括图片类型、大小等,然后获取本地图片信息,实现预览,最后上传。
$(function(){
...接上部分
var box = document.getElementById('drop_area'); //拖拽区域
box.addEventListener("drop",function(e){
e.preventDefault(); //取消默认浏览器拖拽效果
var fileList = e.dataTransfer.files; //获取文件对象
//检测是否是拖拽文件到页面的操作
if(fileList.length == 0){
return false;
}
//检测文件是不是图片
if(fileList[0].type.indexOf('image') === -1){
alert("您拖的不是图片!");
return false;
}

//拖拉图片到浏览器,可以实现预览功能
var img = window.webkitURL.createObjectURL(fileList[0]);
var filename = fileList[0].name; //图片名称
var filesize = Math.floor((fileList[0].size)/1024);
if(filesize>500){
alert("上传大小不能超过500K.");
return false;
}
var str = "<img src='"+img+"'><p>图片名称:"+filename+"</p><p>大小:"+filesize+"KB</p>";
$("#preview").html(str);

//上传
xhr = new XMLHttpRequest();
xhr.open("post", "upload.php", true);
xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");

var fd = new FormData();
fd.append('mypic', fileList[0]);

xhr.send(fd);
},false);
});

2. 谁有springmvc multipartfile html5 多文件上传的示例代码,急!急!急!

java"><formid="fileUpload"action="<%=basePath%>template/fileUpload.do"enctype="multipart/form-data"method="post"class="form-horizontal">
<divclass="modal-header">
<buttontype="button"class="close"data-dismiss="modal"
aria-hidden="true">&times;</button>
<h4class="modal-title"id="myModalLabel"style="color:#15428b;">上传</h4>
</div>
<divclass="modal-body">
<inputtype="file"name="targetFile">
<inputtype="file"name="targetFile">
<inputtype="file"name="targetFile">
</div>
<divclass="modal-footer">
<buttonid="cancel"type="button"class="btnbtn-default"data-dismiss="modal">取消
</button>
<buttontype="button"class="btnbtn-primary"onclick="uploadFile();">确认</button>
</div>
</form>

@RequestMapping(value="/fileUpload.do")
publicStringfileUpload(Modelmodel,@RequestParamMultipartFile[]targetFile,HttpServletRequestrequest,PageSplit<BankVo>pageSplit){
try{
FileOperationsUtil.uploadFileMVC(request,targetFile,"/files/temporary");
model.addAttribute("msg","文件上传成功!");
}catch(Exceptione){
logger.error(e);
model.addAttribute("msg","文件上传失败!");
}

returnthis.allButton(model,request,pageSplit);
}

publicstaticvoiploadFileMVC(HttpServletRequestrequest,MultipartFile[]fileSource,StringfileTarget){
for(MultipartFilefile:fileSource){
if(file.isEmpty()){
System.out.println("文件未上传");
}else{
//如果用的是Tomcat服务器,则文件会上传到\%TOMCAT_HOME%\webapps\项目\fileTarget\文件夹
StringrealPath=request.getSession().getServletContext().getRealPath(fileTarget);
//这里不必处理IO流关闭的问题,因为FileUtils.InputStreamToFile()方法内部会自动把用到的IO流关掉,我是看它的源码才知道的
try{
FileUtils.InputStreamToFile(file.getInputStream(),newFile(realPath,file.getOriginalFilename()));
}catch(IOExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
}
}

3. 移动开发中,遇到了安卓不能支持HTML5文件上传的问题,怎么解决

  • PC端上传文件多半用插件,引入flash都没关系,但是移动端要是还用各种冗余的插件估计得被喷死,项目里面需要做图片上传的功能,既然H5已经有相关的接口且兼容性良好,当然优先考虑用H5来实现。

  • 用的技术主要是:

  1. ajax;

  2. FileReader;

  3. FormData;

  • HTML结构:

4. html5文件上传实现进度条需要后端吗

不需要后端的,前端自己判断,代码如下:
function uploadFile(){

// 获取上传文件,放到 formData对象里面
var pic = $("#myhead").get(0).files[0];
var formData = new FormData();
formData.append("file" , pic);
$.ajax({
type: "POST",
url: "upload",
data: formData ,//这里上传的数据使用了formData 对象
processData : false,
//必须false才会自动加上正确的Content-Type
contentType : false ,

//这里我们先拿到jQuery产生的 XMLHttpRequest对象,为其增加 progress 事件绑定,然后再返回交给ajax使用
xhr: function(){
var xhr = $.ajaxSettings.xhr();
if(onprogress && xhr.upload) {
xhr.upload.addEventListener("progress" , onprogress, false);
return xhr;
}
}
});

5. html5uploader.js 怎么兼容ie8

html5uploader.js 兼容ie8方法如下:

  1. 拥有两个插件,一个是flash版本的uploadify,免费的。另一个是自己写的html5版本的,名叫html5uploader(好俗的名字。。),再加一个适配器uploadadapter,用来决定在什么时候调用哪个插件。页面中只调用uploadadapter。关键的难题就在于,页面中的代码是只写一次的,不管是flash的还是html5的都得能识别出页面上的参数,这也就是我的山寨版本的插件做的事情,原flash版本的配置参数通通得识别并有效。幸好,已经实现了。

  2. 上demo

很多东西,一上demo就都清楚了。。。

[html] view plain

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>无标题文档</title>

<script type="text/javascript" src="jquery.js"></script>

<script type="text/javascript" src="jquery.uploadadapter.js"></script>

<script type="text/javascript" src="jquery.loadscript.js"></script>

<style type="text/css">

</style>

<script type="text/javascript">

$(function(){

$('#upload').uploadadapter({

fileTypeExts:'*.jpg;*.png',

auto:false,

showUploaded:true,

baseurl:'.',//当前目录

multi:true,

removeTimeout:9999999,

uploarl:'upload.php'

});

});

</script>

</head>

<body>

<input type="file" name="file" id="upload" />

</body>

</html>

ie8下调用flash

firefox、chrome下调用html5

略有差异,ie8下圆角没了。。。如果不喜欢这个样式呢,就请打开css文件自己修改吧。

很简单的调用,可以看到在页面中使用的是uploadadapter,由它来决定调用哪个插件。俩个插件所需要的js文件和css文件都是异步引入的,此处用到一个小插件loadScript。参数没有写全,可以自己看源代码的注释~

uploadadapter中的调用情况是我需要的配置,你也可以随意修改。

四、相关文件注释

在此把文件夹中的文件做一个简要介绍:

/html5uploader html5上传插件,你也可以拿来单独使用

/uploadify3.2 flash上传插件,也可以拿来单独使用

/uploads 存放上传的文件

/jquery.loadScript.js 用于异步引入脚本的小插件

/jquery.uploadadapter.js 适配器,用来判断客户端类型,动态调用上传插件

/upload.php 后台处理程序,最基本的

五、上源码,注释很全哦

http://download.csdn.net/detail/never_say_goodbye/5090639

六、一个bug!!

很重的哦,我之前给疏漏了,在这里说一下,文件就不重新上传了

在jquery.html5uploader.js的158和164行,将$('.uploadify-progress')改为$('#'+file.index).fnd('.uploadify-progress'),否则上传多个文件会混淆。

6. html5可以通过路径上传文件么

这个当然可以 只需要有合适的插件支持即可

7. html5超大文件上传如何实现

后端code
<?php

class Upload{
private $filepath = './upload'; //上传目录
private $tmpPath; //PHP文件临时目录
private $blobNum; //第几个文件块
private $totalBlobNum; //文件块总数
private $fileName; //文件名
private $md5FileName;

public function __construct($tmpPath,$blobNum,$totalBlobNum,$fileName, $md5FileName){
$this->tmpPath = $tmpPath;
$this->blobNum = $blobNum;
$this->totalBlobNum = $totalBlobNum;
$this->fileName = $this->createName($fileName, $md5FileName);
$this->moveFile();
$this->fileMerge();
}

8. html5文件上传控件的button样式怎么修改

  1. 你直接将它隐藏,然后自己写一个button。

  2. 给这个button加点击事件。

  3. 点击事件中在通过JS去触发上传文件控件的点击事件就可以了。

9. 手机端其中一个模块使用html5来开发,如何实现用HTML5调用选择手机本地文件后上传。

一.准备HTML文件及其资源文件
使用UIWebView加载本地的HTML4文件 index.html,在index.html中引用了本地的图片、CSS文件、JS文件以及外部的图片。
二.加载本地HTML文件
将html5文件及相关资源添加到项目中,调用需要上传的文件夹。
三.选择调用的文件夹上传。

热点内容
scratch少儿编程课程 发布:2025-04-16 17:11:44 浏览:627
荣耀x10从哪里设置密码 发布:2025-04-16 17:11:43 浏览:356
java从入门到精通视频 发布:2025-04-16 17:11:43 浏览:73
php微信接口教程 发布:2025-04-16 17:07:30 浏览:297
android实现阴影 发布:2025-04-16 16:50:08 浏览:787
粉笔直播课缓存 发布:2025-04-16 16:31:21 浏览:337
机顶盒都有什么配置 发布:2025-04-16 16:24:37 浏览:202
编写手游反编译都需要学习什么 发布:2025-04-16 16:19:36 浏览:800
proteus编译文件位置 发布:2025-04-16 16:18:44 浏览:356
土压缩的本质 发布:2025-04-16 16:13:21 浏览:582