首页 > 编程 > JavaScript > 正文

js本地图片预览实现代码

2019-11-20 08:48:16
字体:
来源:转载
供稿:网友

本文实例为大家分享了js本地图片预览实例,供大家参考,具体内容如下

<!DOCTYPE html><html><head><title></title></head><body><div id="divPreview"><img id="imgHeadPhoto" src="noperson.jpg" style="width: 160px; height: 170px; border: solid 1px #d2e2e2;"alt="" /></div><input type="file" onchange="PreviewImage(this,'imgHeadPhoto','divPreview');" size="20" /><script type="text/javascript">//js本地图片预览,兼容ie[6-9]、火狐、Chrome17+、Opera11+、Maxthon3function PreviewImage(fileObj, imgPreviewId, divPreviewId) {var allowExtention = ".jpg,.bmp,.gif,.png"; //允许上传文件的后缀名document.getElementById("hfAllowPicSuffix").value;var extention = fileObj.value.substring(fileObj.value.lastIndexOf(".") + 1).toLowerCase();var browserVersion = window.navigator.userAgent.toUpperCase();if (allowExtention.indexOf(extention) > -1) {if (fileObj.files) {//HTML5实现预览,兼容chrome、火狐7+等if (window.FileReader) {var reader = new FileReader();reader.onload = function (e) {document.getElementById(imgPreviewId).setAttribute("src", e.target.result);}reader.readAsDataURL(fileObj.files[0]);} else if (browserVersion.indexOf("SAFARI") > -1) {alert("不支持Safari6.0以下浏览器的图片预览!");}} else if (browserVersion.indexOf("MSIE") > -1) {if (browserVersion.indexOf("MSIE 6") > -1) {//ie6document.getElementById(imgPreviewId).setAttribute("src", fileObj.value);} else {//ie[7-9]fileObj.select();if (browserVersion.indexOf("MSIE 9") > -1)fileObj.blur(); //不加上document.selection.createRange().text在ie9会拒绝访问var newPreview = document.getElementById(divPreviewId + "New");if (newPreview == null) {newPreview = document.createElement("div");newPreview.setAttribute("id", divPreviewId + "New");newPreview.style.width = document.getElementById(imgPreviewId).width + "px";newPreview.style.height = document.getElementById(imgPreviewId).height + "px";newPreview.style.border = "solid 1px #d2e2e2";}newPreview.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod='scale',src='" + document.selection.createRange().text + "')";var tempDivPreview = document.getElementById(divPreviewId);tempDivPreview.parentNode.insertBefore(newPreview, tempDivPreview);tempDivPreview.style.display = "none";}} else if (browserVersion.indexOf("FIREFOX") > -1) {//firefoxvar firefoxVersion = parseFloat(browserVersion.toLowerCase().match(/firefox//([/d.]+)/)[1]);if (firefoxVersion < 7) {//firefox7以下版本document.getElementById(imgPreviewId).setAttribute("src", fileObj.files[0].getAsDataURL());} else {//firefox7.0+ document.getElementById(imgPreviewId).setAttribute("src", window.URL.createObjectURL(fileObj.files[0]));}} else {document.getElementById(imgPreviewId).setAttribute("src", fileObj.value);}} else {alert("仅支持" + allowExtention + "为后缀名的文件!");fileObj.value = ""; //清空选中文件if (browserVersion.indexOf("MSIE") > -1) {fileObj.select();document.selection.clear();}fileObj.outerHTML = fileObj.outerHTML;}return fileObj.value; //返回路径}</script></body></html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表