打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
IE8图片上传预览及“无效图片文件”提示解决 - ajaxchen_615的专栏 - CS...

 IE8图片上传预览及“无效图片文件”提示解决收藏

IE8图片上传预览及“无效图片文件”提示解决


今天换了windows7系统,默认浏览器是IE8,所有网站运行环境配置好后调试昨天写的图片上传预览,竟然弹出提示“无效图片文件”!
Google了一下发现有此问题的很多,核心原因是IE8的还是默认安全机制限制远程获取本地文件的路径,只能得到个文件名。

寻找到的解决办法是点击IE8工具项>internet选项>安全>自定义级别>将上传带上路径勾选,不过找了半天都是此方法,并且是针对beta1版本

,这个将上传带路径我始终是没找到在哪里。

就算是我找到了,如果用户和我一样的浏览器,难道让我去修改用户的浏览器设置,那我成流氓了,还是要从程序下手。

昨天写的IE7,FF3上传预览上加个函

function getValue(id){
    id.select();//该对象选取
    return document.selection.createRange().text;//返回选取项的文本内容
}
利用上面的函数将返回值在递交给以前的代码,就轻松解决了;
IE部分的完整代码为

function getValue(id){id.select();return document.selection.createRange().text;}
        var fielvalue=getValue(imgFile);
        $ID('hidden').filters.item("DXImageTransform.Microsoft.AlphaImageLoader").sizingMethod ='image';
        try{ $ID('hidden').filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src=fielvalue;} 
        catch(e){w=0;h=0;return;}
        var wh={'w':$ID('hidden').offsetWidth,'h':$ID('hidden').offsetHeight};
        var bili=wh['h']/wh['w'];
        if(wh['w']>100){wh['w']=100;wh['h']=100*bili};
        $ID('hidden').style.width =wh['w'];
        $ID('hidden').style.height=wh['h'];
        $ID('hidden').filters.item("DXImageTransform.Microsoft.AlphaImageLoader").sizingMethod ='scale';
        $ID("IEview").innerHTML='<img style="filter:progid:DXImageTransform.Microsoft.AlphaImageLoader

(sizingMethod=\'scale\',src=\'' + fielvalue +'\');width:'+wh['w']+';height:'+wh['h']+'" src=\'\'/>';
将以上代码替换掉昨天的FF与IE下的图片上传预览else部分就OK了。

我自己用的win7系统,IE实测,用IETester0.3测试了ie7,由于IETeser IE6一打开就挂掉没有测试,由于IE部分的预览是通过IE私有滤镜达到

的目的,那么IE7、IE8好使了IE6应该不成问题。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
文件上传预览,兼容IE7,IE8,Firefox
png透明问题分析及解决
透明PNG背景图片CSS设置--超幻蓝色理想
Microsoft.AlphaImageLoader滤镜讲解 - 圈子话题详细
兼容所有浏览器圆形头像的CSS
createObjectURL方法 实现本地图片预览
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服