JS实现图片上传预览功能 来源:未知 作者: 类型:图文教程 点击次数: 发布时间:2016-06-12 09:11:36 今天,我爱模板网的一个客户要求在用户中心,用户上传图片的时候,可以预览图片。用JS实现。很简单,触发事件就是file上传框change事件。下面是效果图: 实现代码在下面,您可以运行测试: <!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实现图片上传预览功能 - 我爱模板网 www.5imoban.net</title> <script type="text/javascript"> //下面用于图片上传预览功能 function setImagePreview(avalue) { var docObj=document.getElementById("doc"); var imgObjPreview=document.getElementById("preview"); if(docObj.files && docObj.files[0]){ //火狐下,直接设img属性 imgObjPreview.style.display = 'block'; imgObjPreview.style.width = '150px'; imgObjPreview.style.height = '180px'; //imgObjPreview.src = docObj.files[0].getAsDataURL(); //火狐7以上版本不能用上面的getAsDataURL()方式获取,需要以下方式 imgObjPreview.src = window.URL.createObjectURL(docObj.files[0]); }else{ //IE下,使用滤镜 docObj.select(); var imgSrc = document.selection.createRange().text; var localImagId = document.getElementById("localImag"); //必须设置初始大小 localImagId.style.width = "150px"; localImagId.style.height = "180px"; //图片异常的捕捉,防止用户修改后缀来伪造图片 try{ localImagId.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)"; localImagId.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc; }catch(e){ alert("您上传的图片格式不正确,请重新选择!"); return false; } imgObjPreview.style.display = 'none'; document.selection.empty(); } return true; } </script> </head> <body> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td height="101" align="center"> <div id="localImag"><img id="preview" src="http://www.5imoban.net/images/defaultpic.gif" width="150" height="180" style="display: block; width: 150px; height: 180px;"></div> </td> </tr> <tr> <td align="center" style="padding-top:10px;"><input type="file" name="file" id="doc" style="width:150px;" onchange="setImagePreview();"></td> </tr> </table> </body> </html> 提示:您可以先修改部分代码再运行 TAGS: JS实现图片上传预览功能 上一篇: js实现转动随机数抽奖教程 下一篇: .HTC的文件是什么文件,.HTC文件介绍