IE 路径可以直接获取,但是火狐不可以,因为涉及到安全问题,火狐禁止了直接获取客户端全路径,但可以使用以下方式获取加密后路径,火狐浏览器会自动解密(自我认为) 使用struts情况下上传只需在Action 声明个File 参数get set 接收
upload:为file对象
iconPath = window.URL.createObjectURL(upload.files[0]);
//显示预览图
function showPic(iconPath){
var width = '200px';
var height = '100px';
//获取HTTP浏览器的类型
var Browser_Agent=navigator.userAgent;
var isFirefox = Browser_Agent.indexOf("Firefox")!=-1?true:false;
if(isFirefox)
{
//火狐浏览器
document.getElementById("Preview").innerHTML = "<img id='imgPreview' src='"+iconPath+"' width='"+width+"' height='"+height+"'/>";
}
else
{
//IE浏览器
var Preview = document.getElementById('Preview');
Preview.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = iconPath;
Preview.style.width = width;
Preview.style.height = height;
}
}
function isPicSize(iconPath,upload){
if(iconPath != ""){
var extStart=iconPath.lastIndexOf(".");
var ext=iconPath.substring(extStart,iconPath.length).toUpperCase();
if(ext!=".BMP"&&ext!=".PNG"&&ext!=".GIF"&&ext!=".JPG"&&ext!=".JPEG"){
alert("照片限于bmp,png,gif,jpeg,jpg格式,请您重新上传照片");
imgsizeFlag = false;
return false;
}
//获取HTTP浏览器的类型
var Browser_Agent=navigator.userAgent;
var isFirefox = Browser_Agent.indexOf("Firefox")!=-1?true:false;
if(isFirefox)
{
//火狐 暂时未取得全路径
iconPath = window.URL.createObjectURL(upload.files[0]);
}
var imgsize = parseInt(ajaxAction());
if(imgsize > 20*1024)//限制文件20K
{
alert("当前图片超过20K,请重新上传!");
imgsizeFlag = false;
return false;
}
else
{
showPic(iconPath);
}
}
}
//获取图片上传大小 图片大小不可获取,只有获取图片尺度,大小改为后台验证
function ajaxAction(iconPath)
{
var result="";
var urlstr = "systemlink!picsize.action";
$.ajax({
url:urlstr,
async:false, //线程同步为 false,异步为true 为了保持return 能获取到值而不是空所以,要求线程同步
dataType:"text",
error:function(e){alert("请联系管理员,错误:"+e.message);},
success:function(data){ result = data;}
});
return result;
}
<input type="file" id="uploading" name="myFile" onchange="isPicSize(this.value,this)" />
分享到:
相关推荐
标题提到的"兼容IE6,IE7,IE8和Firefox的图片上传预览效果"直指浏览器兼容性问题,这是一个在过去很长一段时间内困扰开发者的关键挑战。由于早期的Internet Explorer(IE6, IE7, IE8)对现代Web标准的支持不足,而...
Firefox3,IE6,IE7,IE8上传本地图片预览
本话题将深入探讨如何在这些古老的IE版本和Firefox浏览器上实现图片上传预览功能。 图片上传预览是指在用户选择文件后,不实际上传,而是即时在页面上显示所选图片的预览效果,这样可以提高用户体验,让用户在上传...
例如ie7/ie8的滤镜预览法,firefox 3的getAsDataURL方法。 但在opera、safari和chrome还是没有办法实现本地预览,只能通过后台来支持预览。 在研究了各种预览方法后,作为总结,写了这个程序,跟大家一起分享。
综上所述,实现“图片上传预览”功能并保持对IE6/7/8及Firefox的兼容性,需要结合ActiveX控件与HTML5的`FileReader` API,以及适当的浏览器检测和样式调整。通过这样的方法,我们可以在各种浏览器环境下提供一致且...
首先,IE6、IE7和IE8是微软Internet Explorer的早期版本,它们对于现代Web标准的支持非常有限,而火狐(Firefox)作为一款开源浏览器,虽然对新特性支持较好,但在旧版本中也可能存在一些差异。图片上传预览功能允许...
在本场景中,"ASP.NET 多图片上传 可预览 兼容火狐 IE"是一个功能实现,它允许用户在网页上一次性上传多张图片,并在上传前或上传过程中提供预览功能,同时确保该功能在不同浏览器,如火狐(Firefox)和IE(Internet...
本解决方案特别强调了对IE、Firefox和Chrome浏览器的支持,这涵盖了大部分用户常用的网络浏览器。 在线预览PDF的技术实现主要基于以下几个关键点: 1. **PDF.js**:这是一个由Mozilla开发的开源库,它允许在Web...
本文将深入探讨如何使用jQuery实现一个简洁版的图片上传预览功能,这个功能可以兼容包括IE和Firefox在内的多种浏览器。 首先,我们需要理解图片预览的基本原理。在用户选择文件之前,我们无法直接预览图片。但是,...
标题 "兼容ie,Firefox的文件上传" 涉及的核心知识点是实现跨浏览器的文件上传功能,特别是针对Internet Explorer(IE)和Firefox这两个主流浏览器的兼容性问题。在Web开发中,由于不同浏览器对HTML、CSS和JavaScript...
JavaScript解决预览上传问题,目前支持IE7、IE8、火狐浏览器; 上网查找了大量资料,然而能用的代码却寥寥无几;竟然弄出来了,就共享给大家。
虽然可以在ie6,ie7,火狐预览、但在谷歌浏览器还是不行、哪位高人要是有更好的办法浏览、能否交流交流. qq:253930407 email:ruanjingwang@yahoo.com.cn
本文将详细讲解如何在这些浏览器上实现图片上传预览功能。 首先,我们需要理解图片预览的基本原理。在用户选择一个图片文件后,我们通过JavaScript获取文件数据,然后利用HTML5的FileReader API读取文件内容,将其...
本文将详细讲解如何实现一个跨浏览器的图片上传预览功能,包括对火狐(Firefox)、谷歌(Chrome)以及Internet Explorer(IE)等主流浏览器的支持。 首先,我们需要明白,图片上传预览的核心在于利用JavaScript的...
经过测试的图片上传预览,支持主流浏览器,经过测试的,代码更加的简单
"支持谷歌 360 火狐等图片上传预览"这个标题暗示了这是一个跨浏览器的解决方案,旨在确保在不同的浏览器环境下,如谷歌浏览器(Chrome)、360浏览器以及火狐浏览器(Firefox)中,图片预览功能都能正常运行。...
2 兼容ie,firefox 3 实现判断文件大小。火狐下实现了上传前判断图片大小,ie下目前是采用ActiveXObject方法,但会弹框提示,不友好,提供ajax方式后台判断文件大小。 4 判断图片类型合法性。 5 上传前判断图片尺寸。...
本文将详细讲解如何实现IE(Internet Explorer)和FF(Firefox)浏览器的图片上传预览功能,以及处理这两种浏览器在处理文件路径上的差异。 首先,让我们了解一下图片上传预览的基本原理。当用户在网页上选择一个...
例如,IE浏览器通常对新特性的支持较慢,而现代浏览器如Chrome和Firefox则更倾向于支持最新的Web标准。因此,为了确保在所有这些浏览器上都能正常工作,开发者可能使用了如HTML5 File API、jQuery、或者专门的多文件...
jquery file上传预览本地图片支持IE6\7\8\9\10 chrome 火狐 网上有很多关于 file上传预览本地图片开源角本但都对支持到IE6\7\8,而且chrome 火狐最新版本也有问题,自己动手丰衣足食。分享给给大家。