小弟使用IE滤镜写了一个图片上传预览的js,但是后出现了图片上有破图标志。请问可能是和原因?附上代码function setImagePreview(){
var docObj=document.getElementById("filename");
if(docObj.files && docObj.files[0]){
//火狐下,直接设img属性
jQuery("img").attr("style","display:block");
jQuery("#cropbox").attr("width","240");
jQuery("#cropbox").attr("height","180");
//火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式
jQuery("img").attr("src",window.URL.createObjectURL(docObj.files[0]));
jQuery("#p").val(imgSrc);
}else{
//IE下,使用滤镜
docObj.select();
var imgSrc = document.selection.createRange().text;
var localImagId = document.getElementById("cropbox");
var localImag120 = document.getElementById("img100");
//必须设置初始大小
localImagId.style.display = "block";
localImag120.style.display = "block";
localImagId.style.width = "240px";
localImagId.style.height = "180px";
//图片异常的捕捉,防止用户修改后缀来伪造图片
try{
localImagId.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
localImagId.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc;
localImag120.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
localImag120.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc;
jQuery("#p").val(imgSrc);
}catch(e){
alert("您上传的图片格式不正确,请重新选择!");
return false;
}
//alert(imgSrc);
//jQuery("img").attr("style","display:block");
//jQuery("#cropbox").attr("width","240");
//jQuery("#cropbox").attr("height","180");
//jQuery("img").attr("src",imgSrc);
//jQuery("#p").val(imgSrc);
document.selection.empty();
}
}这个JS是在liferay的wbox弹出框中使用的。
var docObj=document.getElementById("filename");
if(docObj.files && docObj.files[0]){
//火狐下,直接设img属性
jQuery("img").attr("style","display:block");
jQuery("#cropbox").attr("width","240");
jQuery("#cropbox").attr("height","180");
//火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式
jQuery("img").attr("src",window.URL.createObjectURL(docObj.files[0]));
jQuery("#p").val(imgSrc);
}else{
//IE下,使用滤镜
docObj.select();
var imgSrc = document.selection.createRange().text;
var localImagId = document.getElementById("cropbox");
var localImag120 = document.getElementById("img100");
//必须设置初始大小
localImagId.style.display = "block";
localImag120.style.display = "block";
localImagId.style.width = "240px";
localImagId.style.height = "180px";
//图片异常的捕捉,防止用户修改后缀来伪造图片
try{
localImagId.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
localImagId.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc;
localImag120.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
localImag120.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc;
jQuery("#p").val(imgSrc);
}catch(e){
alert("您上传的图片格式不正确,请重新选择!");
return false;
}
//alert(imgSrc);
//jQuery("img").attr("style","display:block");
//jQuery("#cropbox").attr("width","240");
//jQuery("#cropbox").attr("height","180");
//jQuery("img").attr("src",imgSrc);
//jQuery("#p").val(imgSrc);
document.selection.empty();
}
}这个JS是在liferay的wbox弹出框中使用的。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货