上传图片预览JS脚本 Input file图片预览的实现示例

 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 2 <html xmlns="http://www.w3.org/1999/xhtml">
 3 <head>
 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 5 <title>By:DragonDean</title>
 6 <script type="text/javascript">
 7 //下面用于图片上传预览功能
 8 function setImagePreview(avalue) {
 9 
10     var docObj=document.getElementById("doc");
11     var imgObjPreview=document.getElementById("preview");
12     //files属性:返回一个 Files 集合,由指定文件夹中包含的所有 File 对象组成,包括设置了隐藏和系统文件属性的文件。
13     if(docObj.files &&docObj.files[0]){
14         //火狐下,直接设img属性
15         imgObjPreview.style.display = 'block';
16         imgObjPreview.style.width = '150px';
17         imgObjPreview.style.height = '180px'; 
18         //imgObjPreview.src = docObj.files[0].getAsDataURL();
19 
20         //火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式
21 
22         imgObjPreview.src = window.URL.createObjectURL(docObj.files[0]);
23     }else{
24         //IE下,使用滤镜
25         //
26         docObj.select();
27         var imgSrc = document.selection.createRange().text;
28         var localImagId = document.getElementById("localImag");
29         //必须设置初始大小
30         localImagId.style.width = "150px";
31         localImagId.style.height = "180px";
32         //图片异常的捕捉,防止用户修改后缀来伪造图片    
33         try{
34         localImagId.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
35         localImagId.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc;
36         }
37         catch(e)
38         {
39         alert("您上传的图片格式不正确,请重新选择!");
40         return false;
41         }
42         imgObjPreview.style.display = 'none';
43         document.selection.empty();
44     }
45     return true;
46 }
47 
48 </script>
49 </head>
50 
51 <body>
52     <table width="100%" border="0" cellspacing="0" cellpadding="0">
53         <tbody>
54             <tr>
55                 <td height="101" align="center">
56                     <div id="localImag">
57                         <img id="preview" src="http://blog.chuangling.net/Public/images/top.jpg" width="150" height="180" style="display: block; width: 150px; height: 180px;">
58                     </div>
59                 </td>
60             </tr>
61             <tr>
62                 <td align="center" style="padding-top:10px;">
63                     <input type="file" name="file" id="doc" style="width:150px;" onchange="javascript:setImagePreview();">
64                 </td>
65             </tr>
66         </tbody>
67     </table>
68 </body>
69 </html>

 

posted @ 2016-12-06 16:04  敲出别样人生  阅读(3148)  评论(0编辑  收藏  举报