Html5上传图片到移动端、PC端的通用方法
这篇文章将为大家详细讲解有关Html5上传图片到移动端、PC端的通用方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
10年积累的成都网站设计、网站制作、外贸营销网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有淅川免费网站建设让你可以放心的选择与我们合作。
HTML第一步创建html,我们在页面中放置一个文件选择的input#upload(PS:偷懒一下,这里就不再次写案例了直接复制的我们的页面)
上传
CSS注:css 写的有些乱哈,看不懂的可以问我,或者直接自己写一下就ok。
CSS Code复制内容到剪贴板 con{ width: %; height: auto; overflow: hidden; margin: % auto auto; color: #FFFFFF; } con .btn{ width: %; height: px; line-height: px; text-align: center; background: #dbc; display: block; font-size: px; border-radius: px; } upload{ float: left; position: relative; } upload_pic{ display: block; width: %; height: px; position: absolute; left: ; top: ; opacity: ; border-radius: px; }
Javascript
通过getElementById获取节点,判断浏览器的兼容性,对于不支持FileReader接口的浏览器将给出一个提示并禁用input,否则监听input的change事件。
JavaScript Code复制内容到剪贴板 //获取上传按钮 var input = document.getElementById("upload"); if(typeof FileReader==='undefined'){ //result.innerHTML = "抱歉,你的浏览器不支持 FileReader"; input.setAttribute('disabled','disabled'); }else{ input.addEventListener('change',readFile,false); }
然后,当file_input的change事件触发时,调用函数readFile()。在readFile中,我们首先获取file对象,然后通过file的type属性来检测文件类型,我们当然只允许选择图像类型的文件,然后我们new一个FileReader实例,并调用readAsDataURL方法来读取选中的图像文件,最后在onload事件中,获取到成功读取的文件内容,并以插入一个img节点的方式显示选中的图片。
JavaScript Code复制内容到剪贴板 function readFile(){ var file = this.files[]; if(!/image\/\w+/.test(file.type)){ alert("文件必须为图片!"); return false; } var reader = new FileReader(); reader.readAsDataURL(file); //当文件读取成功便可以调取上传的接口,想传哪里传哪里(PS: 你们可以把你们的靓照偷偷发给我!) reader.onload = function(e){ var data = this.result.split(','); var tp = (file.type == 'image/png')? 'png': 'jpg'; var a = data[]; //需要上传到服务器的在这里可以进行ajax请求 ... ... } };
写到这里我们已经完成了图片上传的功能了,大家有兴趣的自己动手尝试一下,不懂的地方或者我写错的地方一定要找我哦。 FileReader的方法和事件
关于“Html5上传图片到移动端、PC端的通用方法”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
本文题目:Html5上传图片到移动端、PC端的通用方法
文章起源:http://ybzwz.com/article/gsjgjp.html