IE8/9 本地预览上传图片
2016-11-01 15:44
239 查看
本地预览的意思是,在选择图片之后先不上传到服务器,而是由一个
解决上面问题的方式是采用 css 图片滤镜,示例代码:
获取
<img>标签来预览本地的图片,非 IE8/9 浏览器可以从
<input type=“file”/>中获取到图片流,然后设置到
<img src=“”>进行显示,但 IE8/9 浏览器只能获取到本地图片的绝对路径,并且设置 src 是无效的。
解决上面问题的方式是采用 css 图片滤镜,示例代码:
<!-- 要设置图片预览区域的大小 --> <p class="img-wrap"> <img name="prevPic" id="prevPic" src="" /> <input name="uploadImage" id="uploadImage" type="file" /> </p> <script type="text/javascript"> $('#uploadImage').change(function (e) { if (navigator.userAgent.indexOf('MSIE 8') >= 0 || navigator.userAgent.indexOf('MSIE 9') >= 0) { $(this).select(); window.parent.document.body.focus(); var realpath = document.selection.createRange().text; $(this).parent().css("filter", "progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled='true',src=\"" + realpath + "\",sizingMethod=scale)"); } else { var file = e.delegateTarget.files[0]; var reader = new FileReader(); var targetId = e.target.id; reader.readAsDataURL(file); reader.onload = function () { var picString = reader.result; $("#prevPic").attr({ "src": picString }).show(); }; } }); </script>
获取
realpath是为了解决发布 IIS 之后,出现本地图片路径变成
C:\fakepath\xxxx.jpg的问题。
相关文章推荐
- 兼容所有主流浏览器的图片上传本地预览(IE\FIREFOX\CHROME)
- JavaScript实现本地图片上传预览功能(兼容IE、chrome、FF)
- Javascript 兼容IE 预览本地上传图片方法
- 兼容所有主流浏览器的图片上传本地预览(IE\FIREFOX\CHROME)
- 图片上传前的本地预览,兼容IE的方法
- JavaScript实现本地图片上传预览功能(兼容IE、chrome、FF)
- 浏览器本地预览图片并Ajax上传到服务器(谷歌火狐 ,IE不兼容)
- JS实现图片上传时的本地预览,兼容IE和firefox谷歌
- 关于IE 中上传图片时用JavaScript预览本地图片的功能失效
- 关于IE6和IE7关闭窗口时提示和不提示以及上传图片前的本地预览解决办法
- 预览待上传的本地图片
- 关于IE7关闭窗口时总是提示和上传图片前的本地预览解决办法
- 本地图片上传前的预览
- IE7在图片上传时,无法预览本地图片的问题解决方法
- IE7下图片上传预览实现
- 关于IE6和IE7关闭窗口时提示和不提示以及上传图片前的本地预览解决办法
- [AS3]纯AS代码实现可预览本地图片的flash上传客户端[转]
- 预览待上传的本地图片
- 预览待上传的本地图片[转]
- 预览待上传的本地图片