图片预览js代码在谷歌浏览器下异常 10
项目中有个功能是要用户可以预览本地选择的图片,预览后可以上传。HTML代码:预览图片的js代码:setImagePreview:function(fileObj,prev...
项目中有个功能是要用户可以预览本地选择的图片,预览后可以上传。
HTML代码:
预览图片的js代码:
setImagePreview:function(fileObj, previewObj, localImg,iwidth,iheight){
var docObj=fileObj;
var imgObjPreview=previewObj;
if(docObj.files && docObj.files[0]){
/*火狐下,直接设img属性*/
imgObjPreview.style.display = 'block';
if(iwidth>0)
imgObjPreview.style.width =iwidth+'px' ;
if(iheight>0)
imgObjPreview.style.height =iheight+'px' ;
/*火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式*/
imgObjPreview.src = window.URL.createObjectURL(docObj.files[0]);
}else{
/*IE下,使用滤镜*/
docObj.select();
var imgSrc = document.selection.createRange().text;
var localImagId =localImg;
/*必须设置初始大小*/
if(iwidth>0)
localImagId.style.width =iwidth+'px';
if(iheight>0)
localImagId.style.height =iheight+'px';
/*图片异常的捕捉,防止用户修改后缀来伪造图片*/
try{
localImagId.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
localImagId.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc;
}catch(e){
alert("您上传的图片格式不正确,请重新选择!");
return false;
}
imgObjPreview.style.display = 'none';
document.selection.empty();
}
return true;
}
网页效果:
当第一次选择图片:
我再点击选择图片:
点击取消:
图片预览的这个方法在谷歌浏览器下就会报错,而IE,火狐则不会。如何解决?
第二个问题:在IE8浏览器下,选择图片会提示图片格式不正确,为什么? 展开
HTML代码:
预览图片的js代码:
setImagePreview:function(fileObj, previewObj, localImg,iwidth,iheight){
var docObj=fileObj;
var imgObjPreview=previewObj;
if(docObj.files && docObj.files[0]){
/*火狐下,直接设img属性*/
imgObjPreview.style.display = 'block';
if(iwidth>0)
imgObjPreview.style.width =iwidth+'px' ;
if(iheight>0)
imgObjPreview.style.height =iheight+'px' ;
/*火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式*/
imgObjPreview.src = window.URL.createObjectURL(docObj.files[0]);
}else{
/*IE下,使用滤镜*/
docObj.select();
var imgSrc = document.selection.createRange().text;
var localImagId =localImg;
/*必须设置初始大小*/
if(iwidth>0)
localImagId.style.width =iwidth+'px';
if(iheight>0)
localImagId.style.height =iheight+'px';
/*图片异常的捕捉,防止用户修改后缀来伪造图片*/
try{
localImagId.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
localImagId.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc;
}catch(e){
alert("您上传的图片格式不正确,请重新选择!");
return false;
}
imgObjPreview.style.display = 'none';
document.selection.empty();
}
return true;
}
网页效果:
当第一次选择图片:
我再点击选择图片:
点击取消:
图片预览的这个方法在谷歌浏览器下就会报错,而IE,火狐则不会。如何解决?
第二个问题:在IE8浏览器下,选择图片会提示图片格式不正确,为什么? 展开
2个回答
展开全部
应该是不兼容导致的,你不妨换其他的浏览器使用试试,比如QQ浏览器最新版本,其采用先进的Chrome内核,并进一步优化与完善,上网速度快,几乎0秒启动,多页面浏览也很顺畅。还具有突破性浏览器架骨及成熟的浏览器管理模式,保证了浏览器使用的流畅性与稳定性。还更具有针对性与识别性。
希望您采纳!
希望您采纳!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询