html5 上传文件,web页面上传文件

  html5 上传文件,web页面上传文件

  文件接口提供与文件相关的信息,并运行JavaScript来访问网页上的文件内容。

  File对象来自用户使用input选项卡选择文件时返回的FileList对象,以及拖放操作的DataTransfer对象。文件是一种特殊的Blob,可以在任何可以使用Blob的上下文中使用。

  要在网页中使用文件,需要涉及的对象有:file对象、FileList对象和FileReader对象。

  FileList对象

  列表来自两个地方,即input元素的files属性和拖放API(拖动文件时,事件。DataTransfer.files是一个文件列表对象)。

  输入id= file item type= file var file list=document . getelementbyid( fileItem )。文件FileList对象的标准属性

  长度:这是一个只读属性。此属性返回包含在FileList对象中的File对象的长度。

  FileList对象的标准方法

  Item(index):获取FileList对象中指定位置的File对象。可以用数组索引的形式缩写。

  File对象

  列表对象的每一项都是一个文件对象。文件是一种特殊的Blob。

  File对象的标准属性

  1.lastModified:返回文件被修改的时间。这个时间是从1970年1月1日0: 00: 00开始的毫秒数。是只读属性。

  2.name:返回file对象引用的文件的文件名,这是一个只读属性。

  3.type:返回file对象引用的文件的文件类型,即我的类型。这是一个只读属性。

  4.size:返回file对象引用的文件的文件大小。这是一个只读属性。

  File对象的标准方法

  没有为File对象定义单独的方法,但它具有从Blob对象继承的方法。

  FileReader对象

  FileReader对象使web应用程序能够异步读取用户计算机上的文件。

  FileReader()是一个构造函数,通过它可以创建一个新的FileReader对象。

  var file reader=new fileReader();

  FileReader对象的标准属性

  1.error:返回文件读取过程中出现的错误。

  2.result:返回文件的内容,返回值的类型为String或ArrayBuffer。只有在读取操作完成后,此属性才是合法的。

  3.readyState:返回读取操作的当前状态。可能的值为0:读取尚未开始,1:读取正在进行,2:读取已完成。

  FileReader对象的标准方法

  1.abort():中断读取操作。readyState的值变为2。

  2.readAsArrayBuffer(Blob):读取指定的Blob,比如File对象(File对象是一种特殊的Blob)。读取一完成,readyState属性的值就会变成2,result属性是一个表示文件数据的ArrayBuffer。

  3.readAsDataURL(Blob):读取指定的Blob,比如File对象(File对象是一种特殊的Blob)。读取一完成,readyState属性的值就会变成2,result属性是表示文件数据的URL,数据格式是base64编码的字符串。

   input type= file onchange= preview file() brimg src= height= 200 alt=图像预览.function preview file(){ var preview=document . query selector( img );var file=document . query selector( input[type=file])。文件[0];var reader=new FileReader();reader.addEventListener(load ,function(){ preview . src=reader . result;},假);if(file){ reader . readasdataurl(file);} } 4 . reada text(Boob,encoding):读取指定的Blob,比如File对象(File对象是一种特殊的Blob)。一旦读取完成,readyState属性的值将变为2,而result属性是表示文件数据的文本字符串。第二个参数是可选的,它用于指定结果属性中文本字符串的编码方法。默认值是UTF-8。

  FileReader对象的事件

  1.abort:当读操作终止时触发。

  2.error:在读取操作过程中遇到错误时触发。

  3.load:当读操作成功完成时触发。

  4.loadend:在读操作结束时触发。不能阅读成功或失败。

  5.loadStart:当读操作开始时触发。

  6 .过程:阅读过程中触发。

  在web应用中使用文件

  使用HTML5中的文件对象,可以访问选择的本地文件,并且读取这些文件中的内容。文件对象要么来自于投入元素,要么来自于拖放接口。

  通过input元素选择文件

  输入类型=文件id=输入访问通过投入选择的文件

  var选择的文件=文档。getelementbyid(“输入”).文件[0];上述代码段一次只能选择一个文件,如果一次要选择多个文件,就需要给投入元素添加一个多个的属性,并将多个的属性设置我没错。在壁虎1.9.2之前不支持一次选择多个文件。

  通过drag and drop接口选择文件

  关于拖放接口可以查看HTML5拖拽事件。

  第一步:创建一个放置区域。一个普通的元素,如分区,p等。

  第二步:给放置区添加下降,拖拽,拖拽事件处理程序。其中起关键作用的是滴事件处理程序。

  下面是一个显示缩略图的例子:

  div id= Dropbox class= Dropbox /div。Dropbox { border:纯色3px红色;高度:400像素宽度:自动;} var dropboxDropbox=document。getelementbyid( Dropbox );//注册事件处理程序Dropbox。addevent侦听器( dragenter ,drag enter,false);Dropbox。addevent侦听器( dragover ,dragover,false);dropbox.addEventListener(drop ,drop,false);函数拖动回车(e){ e .停止传播();e .防止违约();}函数dragover(e){ e .停止传播();e .防止违约();}函数drop(e){ e .停止传播();e .防止违约();var dt=e . datatransfervar files=dt . fileshandlefiles(文件);}函数处理文件(files){ for(var I=0;我文件。长度;I){ var file=files[I];var imagetype=/^image\//;如果(!imagetype。测试(文件。type)){继续;} var img=文档。createelement(“img”);img.file=fileDropbox。appendchild(img);var reader=new FileReader();读者。onload=function(){ img。src=读者。结果;};reader.readAsDataURL(文件);}} 以上所述是小编给大家介绍的HTML5文件接口在网页面上使用文件下载,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: