早期浏览器,不能将本地图片作为页面元素处理,要实现图片预览需要将图片先上传到服务器,再从服务器取得进行预览
现代的浏览器功能越来越全面,因此可以实现对一些数据的本地处理 Chrome MsEdge(ie11) Firefox
上图的html
<tr> <td>缩略图</td> <td> <a href="javascript::void(0)" class="fileBtn"> 选择文件 <input type="file" id="file_pic"> </a> </td> </tr> <tr> <td></td> <td><img id="file_view" style="width:110px"></td> </tr>
// 下面用于图片上传预览功能 objc : { file, pic, width } yqUI.setImagePreview = function(objc) { var docObj=document.getElementById(objc.file); var imgObjPreview=document.getElementById(objc.pic); if(docObj.files &&docObj.files[0]){ imgObjPreview.style.display = 'block'; imgObjPreview.style.width = objc.width; imgObjPreview.src = window.URL.createObjectURL(docObj.files[0]); return true; } else { return false; }; }; // 使用该控件, opts 配置对象 var opts = { file : 'file_pic', pic : 'file_view', width : '180px' } yqUI.setImagePreview(opts);