html5如何实现文件上传功能

清浅
Lepaskan: 2018-11-16 12:42:06
asal
11092 orang telah melayarinya

本篇文章将给大家分享一个案例,利用HTML5实现文件上传的功能,有一定的参考价值,希望对大家有所帮助

html5新增的一些API方法使我们实现一些功能更加简便也可以实现更多的动态效果,接下来将详细介绍文件上传功能的实现

案例实现所用到的知识点

(1)multiple是HTML5新增属性主要用于多个值文件的上传,规定了所输入字段可选择多个值,一般与input属性中email 和 file共用

(2)querySelector() 方法主要用于返回文档中匹配指定选择器的第一个元素,如果要返回所有的元素可用querySelectorAll() 方法替代。

(3)FileReader 对象允许应用程序异步读取存储在计算机上的文件的内容,使用 File 或 Blob 对象指定读取的文件或数据。其中File对象可以是来自元素上选择文件后返回的FileList对象

(4)readAsDataURL:将读取出来的图像文件,直接显示在网页上,达到预览效果

代码展示

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>文件读取</title>
<style>
.box{
width:500px;
height:500px;
border: 1px solid #ccc;
margin:300px auto;
position: relative;
background-color:rgb(167,239,251); 
}
.file{
position: absolute;
bottom:0;
left:0;
}
#img{
position: absolute;
left:100px;
bottom:30px;
}
</style>
</head>
<body>
<div>
<input type="file" multiple>
<img src="" alt="" id="img">
</div>
<script>
var file = document.querySelector(&#39;.file&#39;);/*获取到了文件表单元素*/
/*选择文件后触发*/
file.onchange = function () {
/*初始化了一个文件读取对象*/
var reader = new FileReader();
/*读取文件数据  this.files[0] 文件表单元素选择的第一个文件 */
reader.readAsDataURL(this.files[0]);
/* 加载 */
reader.onload = function () {
    /*读取完成显示图片*/
    console.log(this.result);
document.querySelector(&#39;#img&#39;).src = this.result;

}
}
</script>
</body>
</html>
Salin selepas log masuk

效果显示

未选中前

Image 6.jpg

选中后

Image 7.jpg

总结:以上就是本篇文章的内容了,希望帮助大家学会如何利用HTML5实现文件上传。

Atas ialah kandungan terperinci html5如何实现文件上传功能. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan