cjhupload一个简单异步文件上传插件(html5+js)

来源:http://www.myopenresources.com/page/resource_detail_0.html?rid=370

更多文章请查看本人博客网站:http://www.myopenresources.com

cjhupload是一个本人基于原生JS编写的一个文件上传插件,支持手机、电脑端,你可查看例子,或下载详细例子(请到下面的“下载地址”下载)。

例子:

<!DOCTYPE HTML>

<html lang=‘zh‘>

<head>

<meta charset="utf-8">

<meta name="author" content="ISUX">

<meta name="format-detection" content="telephone=no" />

<meta name="viewport" content="width=device-width,user-scalable=no" />

<meta name="apple-mobile-web-app-capable" content="yes" />

<meta name="apple-mobile-web-app-status-bar-style" content="black" />

<title>demo</title>

<!--jquery-->

<script src="jquery.min.js"></script>

<!--语言包-->

<script src="fileupload/cjhupload-zh.js"></script>

<!--core-->

<script src="fileupload/cjhupload.js"></script>

<script type="text/javascript">

//检查文件类型

function checkFileType(file,fileName){

var regExp =new RegExp("^.*?\.(jpg|jpeg|png)$");

if(!regExp.test(fileName)){

return false;

}else{

return true;

}

}

//文件上传

function uploadImg(){

var tempList=new Array();

for(var i=0;i<fileList.length;i++){

tempList.push(fileList[i].file);

}

var cjhUpload = new CJHUpload({

url:‘../index/upload.jhtml‘,//文件上传地址

fileList:tempList,

onSuccess:function(file, responseText){

alert(responseText);

},

onCheckAllFileType:function(file,fileName){

return checkFileType(file,fileName);

}

});

cjhUpload.sendFormData();

}

//读取图片

var fileId=1;

var fileList = new Array();

function readFile(obj){

if (obj.files && obj.files[0]){

if(!checkFileType(obj.files[0],obj.files[0].name)){

$.tips({

content:‘上传的文件类型不正确!‘,

stayTime:1500,

type:"warn"

})

}else{

var fileObject=new Object();

fileObject.file=obj.files[0];

fileObject.id=fileId;

fileList.push(fileObject);

var reader = new FileReader();

reader.onload = function(evt){

var liId="liImgId"+fileId;

$(‘#imgViews‘).append(‘<li id="‘+liId+‘" onclick="viewAddImg(\‘‘+fileId+‘\‘,\‘‘+(evt.target.result)+‘\‘);"><img src="‘+(evt.target.result)+‘"/></li>‘);

var lisLen=$(‘#imgViews >li‘).length;

$("#imgViews").append($("#imgViews >li").eq(lisLen-2).remove());

}

reader.readAsDataURL(obj.files[0]);

reader.onloadend=function(){

fileId++;

}

}

}

}

//提交表单

function submitData(){

uploadImg();

}

</script>

<style>

li {

list-style: none; }

.ui-grid-trisect>li {

width: 25%;

float: left;

position: relative;

-webkit-box-sizing: border-box;

text-align: center;

}

.ui-grid-trisect li img {

width: 5.9em;

height: 5.9em;

border: 0.1em solid #e1e1e1;

}

.uwh-bg {

-webkit-background-size: contain;

background-size: contain;

background-repeat: no-repeat;

background-position: center;

background-image: url(‘add-img.png‘);

width: 100%;

height: 100%;

cursor: pointer;

}

.uwh-bg input {

width: 5.9em;

height: 5.9em;

filter: alpha(opacity = 0);

opacity: 0;

}

.btn-content {

width: 100%;

height: 10em;

}

.btn-content div {

width: 90%;

height: 2.5em;

margin-left: auto;

margin-right: auto;

line-height: 2.5em;

text-align: center;

font-size: 1.3em;

color: #ffffff;

background-color: orange;

-moz-border-radius: 5px;

-webkit-border-radius: 5px;

border-radius: 5px;

cursor: pointer;

}

</style>

<body>

<!-- btn -->

<div class="btn-content" style="margin-top: 2.5em;height: 5em">

<div onclick="submitData();" style="margin-top: 1.1em">

提交

</div>

</div>

<!-- upload img -->

<div style="margin-top: 0.5em">

<ul class="ui-grid-trisect" style="padding-left: 1.55%;padding-right:1.55%;text-align: center;" id="imgViews">

<li class="uwh-bg" id="addImgBtn" style="padding: 0.05em;width:6.0em;height:6.0em">

<input type="file"  onchange="readFile(this);"/>

</li>

</ul>

</div>

</body>

</html>

效果:

时间: 2024-10-02 20:50:55

cjhupload一个简单异步文件上传插件(html5+js)的相关文章

jfinal初接触,一个简单的文件上传例子

写了个上传的小例子. 从jfinal官网下载jfinal-1.8_demo_for_jsp.zip 然后下载jfinal-1.8-lib.zip 按要求删掉该删除的,引入一些包,之后的项目结构: DemoConfig.java中配置路由,只留下了根路径: /** * 配置路由 */ public void configRoute(Routes me) { me.add("/", CommonController.class); //me.add("/blog", B

基于Java的一个简单的文件上传下载功能

最近在公司给客户端做接口,有一个图片上传和文件下载的功能,本来想用Struts来做文件上传下载,但是看了下公司好像没有这个配置,然后看了下同事的代码,才发现原来Apache也可以简单的实现文件上传下载. 首先引入commons-io-2.2.jar FileUtils为我们提供了很多对文件的操作的方法,比如上传整个文件夹的文件.上传单个文件等 然后请看代码下载: public static void uploadFile(String targetDirectory,String targetF

【分享】兼容ie6-9和现代浏览器以及ios,android,pad等触屏设备的异步文件上传插件

核心代码 /** * 该插件用于兼容ie6-7-8-9及现代浏览器的异步上传文件. * 请注意,在ie6-7-8-9上面的原理是: * 新添加一个表单和一个iframe,然后每次选择都将file输入框复制到该表单上面,然后submit整个表单,这样就可以实现类似ajax提交文件的效果, * 但是有一点是没办法处理的,就是在客户端预览图片及判断文件大小.现代浏览器则可以. */ var AjaxFileInput=function(opts){ var settings={ container:"

实现一个简单的文件上传进度条

新手入门web 文件上传完成 取得的进展 没有进度条只能用文字 不好看  必须是一个进度条  没有艺术 互联网很 进度条 需要图片 有多种帧的 他看上去好麻烦 让自己的单纯 很简单 我没想到这么复杂  共享 jsp页面 <tr> <td width="100">图片</td> <td> <div style="width: 450px;"> <div class="file-box"

【Jsp】使用jspsmartupload完成简单的文件上传系统

请不要妄想,一个html的file控件,再加上javascript与jquery语句就可以完成文件上传, 文件上传系统从来是需要配合服务器来完成的 用户把自己的文件上传到服务器上 文件上传系统是很复杂的一件事. html的file控件向动态网页语言以post方式通过enctype="multipart/form-data"解码成二进制文件就不管了 动态网页需要对其通过asp,jsp,php,asp.net编程,才能正常把文件保存到服务器中 网络上对文件处理的方法是五花八门,让人无从下手

JQUERY插件JqueryAjaxFileUplaoder----更简单的异步文件上传

异步上传相信大家都做过类似的功能,JqueryAjaxFileUploader为我们提供了更简单的实现和使用方式.不过既然是JQUERY的插件那么它所依赖的环境大家都懂得.JqueryAjaxFileUploader并不华丽,也没有提供美化文件上传控件的css,它并不像jQuery File Upload(喜欢的同学可以去尝试下),提供了美观的样式和专门的图片预览.多任务上传等等, JqueryAjaxFileUploader 所拥有的很简单,只是异步上传文件的功能,当然这并不排除由你亲自为它披

异步文件上传组件 Uploader

Uploader是非常强大的异步文件上传组件,支持ajax.iframe.flash三套方案,实现浏览器的全兼容,调用非常简单,内置多套主题支持 和常用插件,比如验证.图片预览.进度条等,广泛应用于淘宝网,比如退款系统.爱逛街.二手.拍卖.我的淘宝.卖家中心.导购中心等. Uploader的特性 支持ajax.flash.iframe三种方案,兼容所有浏览器.(iframe不推荐使用) 多主题支持,可以自己定制主题 丰富的插件支持 支持多选批量上传 支持上传进度显示 支持取消上传 支持图片预览(

支持多文件上传的jQuery文件上传插件Uploadify

支持多文件上传的jQuery文件上传插件Uploadify,目前此插件有两种版本即Flash版本和HTML5版本,对于HTML5版本会比较好的支持手机浏览器,避免苹果手机Safari浏览器不支持Flash,主要特性:支持多文件上传.HTML5版本可拖拽上传.实时上传进度条显示.强大的参数定制功能,如文件大小.文件类型.按钮图片定义.上传文件脚本等. Flash版本使用方法: 1.加载JS和CSS ? 1 2 3 <script src="jquery/1.7.1/jquery.min.js

强大的支持多文件上传的jQuery文件上传插件Uploadify

支持多文件上传的jQuery文件上传插件Uploadify,目前此插件有两种版本即Flash版本和HTML5版本,对于HTML5版本会比较好的支持手机浏览器,避免苹果手机Safari浏览器不支持Flash,主要特性:支持多文件上传.HTML5版本可拖拽上传.实时上传进度条显示.强大的参数定制功能,如文件大小.文件类型.按钮图片定义.上传文件脚本等. Flash版本使用方法: 1.加载JS和CSS ? 1 2 3 <script src="jquery/1.7.1/jquery.min.js