【分享】javascript本地预览浏览的图片,兼容ie6、ie7、ie8、火狐11、Chrome17.0.963.83浏览器的图片预览
大家一起测试下,看看其他浏览器是否兼容,如果有兼容其他浏览器的代码,发不出来,我整合一下,搞一个兼容性比较好的本地图片预览的功能,相信很多人都会用到吧,大家一起努力。下面代码有的地方需要自己修改,不要全部赋值黏贴。
//用来预览浏览的图片,兼容ie6、ie7、ie8、火狐11、Chrome17.0.963.83浏览器的图片预览
function ShowImage(obj)
{
var allowSuffix="<%=GetAllowPicSuffix() %>";//.jpg,.bmp,.gif,.png
var suffix=obj.value.substring(obj.value.lastIndexOf(".")+1).toLowerCase();
//获取浏览器版本信息
var browserVersion= window.navigator.userAgent.toUpperCase();
//判断是否是允许的文件
if(allowSuffix.indexOf(suffix)>-1){
//兼容ie和火狐
if (browserVersion.indexOf("MSIE 6.0")>-1){//ie6
obj.select()
$("#imgHeadPhoto").attr("src",document.selection.createRange().text);
}else if(browserVersion.indexOf("MSIE 7.0")>-1 || browserVersion.indexOf("MSIE 8.0")>-1){//ie7、ie8
//滤镜实现
obj.select();
var newPreview = document.getElementById("divNewPreview");
newPreview.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = document.selection.createRange().text;
newPreview.style.width = 160;
newPreview.style.height = 170;
newPreview.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").sizingMethod = 'scale';
$("#divPreview").attr("style","display:none");
$("#divNewPreview").attr("style","filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=image);width:160px;height:170px;border:solid 1px #d2e2e2;");
}
else if(browserVersion.indexOf("Firefox")>-1){ //火狐
var objectURL = window.URL.createObjectURL(obj.files[0]);
$("#imgHeadPhoto").attr("src", window.URL.createObjectURL(obj.files[0]));
}
else if(obj.files){
//兼容chrome,也可以兼容火狐,Chrome、Firefox上通过HTML5来实现
var reader = new FileReader();
reader.onload = function(evt){$("#imgHeadPhoto").attr("src",evt.target.result);}
reader.readAsDataURL(obj.files[0]);
}
}else{
alert("仅支持"+allowSuffix+"文件类型");
//清空选中文件
obj.value="";
if(browserVersion.indexOf("MSIE")>-1){
obj.createTextRange().execCommand("delete");
//obj.select();
//document.selection.clear();
}
obj.outerHTML=obj.outerHTML;
}
}
//html代码
<td colspan="3" valign="bottom">
<div id="divPreview">
<img id="imgHeadPhoto" src="~/Images/Headphoto/noperson.jpg" style="width: 160px;
heig