2022-11-18 03:52来源:m.sf1369.com作者:宇宇
HTML 中input标签有个类型是file。这个是可以上传文件使用的。你可以直接操作这个标签的size来获取文件的大小。可通过下面的方式 html代码:js代码:
var fileId = "uploadtest"
;var dom = document.getElementById(fileId)
; var fileSize = dom.files[0].size;//文件的大小,单位为字节B
首先,我们制作的这个进度条并没有后台数据作为支撑,所以是一个靠js实现的一个简单的页面。
我们首先需要新建一个html5的页面,其使用的progress元素实在html5时代才出现的。我们在新建的页面中,输入一个段落标签,一个进度条,一个button按钮。然后,我们需要设置一下进度条显示的进度。value代表从多少开始,max代表到多少结束。我们做的是百分比形式的,应该写成这样的。这些做好之后,我们需要书写两个小的事件,实现原理大体上是鼠标单击下载按钮,开始下载变为正在下载百分之多少,等到达到我们预设的时间后显示下载完成。我们之前已经给p标签和progress标签分别赋予了不同的id,我们需要获取到这两个元素,并将他们赋给两个变量。我们还要将progress的初始值设为0,当鼠标单击的时候,我们以一定的时间为周期调用写好的事件。函数写好之后,我们在浏览器中调试,点击下载按钮之后会在300ms内完成下载时间。
中国移动
春节限时特惠流量包
10元10G省内流量,2月18日0点生效,2月24日24点自动失效,让您手机上网玩到爽!
产品编号 gd-addsp-jsll
功能费 ¥ 10.0
商品介绍
一、活动时间:即日起至2015年2月24日
二、套餐优惠:10元10G省内流量,10元费用一次性扣取,不与原流量优惠套餐互斥。
三、活动相关规范
(一)本活动优惠到期之后,此优惠套餐自动取消。
(二)在资费生效时间前,允许您提前预约订购,2月18日0点生效。
(三)客户参与活动所获得的省内限时优惠流量套餐于2月18日零点生效,2月24日24点自动失效。
(四)限时优惠流量包不纳入流量合并提醒短信,仅在使用完毕时单独进行提醒。
其实还是可以获取的。通过使用hidden field,再写个javascript函数就可以了。obj为input file的name,yy为隐藏域的id
1.表单验证插件 validate.js
2.表格插件 dateTables.js
3.弹层插件 layer.js
4.分页插件 layPage.js 5下拉框选择插件 select2.js chosen.js 6.图片全屏显示 supersized.js 7.复选框单选按钮美化 iCheck.js 表单美化插件 uniform.js里也行,可以看看 8.全屏滚动插件 fullPage.js 9.上传插件 zyUpload.js 10.树插件 zTree.js 11.表单提交插件 ajaxForm.js 12.输入格式化插件 inputmask.js maskedinput.js 13.向导插件 formToWizard.js 14.日历插件 fullcalendar.js 15.手机端滚动插件 iscroll.js
代码示例如下:
<!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>js验证图片</title>
<script>
UpLoadFileCheck=function()
{
this.AllowExt=".jpg,.gif";
//允许上传的文件类型 0为无限制
//每个扩展名后边要加一个"," 小写字母表示
this.AllowImgFileSize=0;
//允许上传文件的大小 0为无限制 单位:KB
this.AllowImgWidth=0;
//允许上传的图片的宽度 0为无限制 单位:px(像素)
this.AllowImgHeight=0;
//允许上传的图片的高度 0为无限制 单位:px(像素)
this.ImgObj=new Image();
this.ImgFileSize=0;
this.ImgWidth=0;
this.ImgHeight=0;
this.FileExt="";
this.ErrMsg="";
this.IsImg=false;//全局变量
}
UpLoadFileCheck.prototype.CheckExt=function(obj)
{
this.ErrMsg="";
this.ImgObj.src=obj.value;
//this.HasChecked=false;
if(obj.value=="")
{
this.ErrMsg="\n请选择一个文件";
}
else
{
this.FileExt=obj.value.substr(obj.value.lastIndexOf(".")).toLowerCase();
if(this.AllowExt!=0&&this.AllowExt.indexOf(this.FileExt)==-1)
//判断文件类型是否允许上传
{
this.ErrMsg="\n该文件类型不允许上传。请上传 "+this.AllowExt+" 类型的文件,当前文件类型为"+this.FileExt;
}
}
if(this.ErrMsg!="")
{
this.ShowMsg(this.ErrMsg,false);
return false;
}
else
return this.CheckProperty(obj);
}
UpLoadFileCheck.prototype.CheckProperty=function(obj)
{
if(this.ImgObj.readyState!="complete")//
{
sleep(1000);//一秒使用图能完全加载
}
if(this.IsImg==true)
{
this.ImgWidth=this.ImgObj.width;
//取得图片的宽度
this.ImgHeight=this.ImgObj.height;
//取得图片的高度
if(this.AllowImgWidth!=0&&this.AllowImgWidth<this.ImgWidth)
this.ErrMsg=this.ErrMsg+"\n图片宽度超过限制。请上传宽度小于"+this.AllowImgWidth+"px的文件,当前图片宽度为"+this.ImgWidth+"px";
if(this.AllowImgHeight!=0&&this.AllowImgHeight<this.ImgHeight)
this.ErrMsg=this.ErrMsg+"\n图片高度超过限制。请上传高度小于"+this.AllowImgHeight+"px的文件,当前图片高度为"+this.ImgHeight+"px";
}
this.ImgFileSize=Math.round(this.ImgObj.fileSize/1024*100)/100;
//取得图片文件的大小
if(this.AllowImgFileSize!=0&&this.AllowImgFileSize<this.ImgFileSize)
this.ErrMsg
无法获取本地文件的绝对路径,这里涉及到一个浏览器安全问题。// 选择文件 function changeFile () { var e = this; // 修正IE8下,
你要理解fileNumLimit的含义。fileNumLimit=总文件数-已经上传的文件数。这就意味着你fileNumLimit设置为5的话,一次上传6张是不行的,但是每次上传1张,就能突破5张的限制。原因是插件在上传完一个文件后,会把计数清零。你可以参考修改下面的代码:
uploader.on( 'fileQueued', function() { count++; }); uploader.on( 'fileDequeued', function() { count--; }); uploader.on( 'uploadFinished', function() { //注销这段代码就可以了 count = 0; });上面的代码位于webuploader.js的L3809