在IE 10以下无法(有时可以有时不可以)预览本地所上传的图片
IE下iframe中使用滤镜document.selection.createRange().text获取不到值得解决办法
最近公司项目上线,客户反馈:在IE 10以下无法(有时可以有时不可以)本地预览所上传的图片
判断是否为IE 的方法
//判断是否是IE浏览器,包括Edge浏览器
function IEVersion() {
var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
var isOpera = userAgent.indexOf("Opera") > -1; //判断是否Opera浏览器
var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判断是否IE浏览器
var isEdge = userAgent.indexOf("Windows NT 6.1; Trident/7.0;") > -1 && !isIE; //判断是否IE的Edge浏览器
if (isIE) {
var reIE = new RegExp("MSIE (\\d+\\.\\d+);");
reIE.test(userAgent);
var fIEVersion = parseFloat(RegExp["$1"]);
return fIEVersion;
}
// else if (isEdge) {
// return "Edge";
// }
else {
return 100;//非IE
}
}
获取删除文件的路径
if (IEVersion()<10) {//IE10以下
file.select();
//file.blur();//客货反馈的问题出在这,将window.parent.document.body.focus();替换即可
//一般使用这一行
window.parent.document.body.focus();
var reallocalpath = document.selection.createRange().text;
$(".modalBox").css("display", "block");
//采用IE滤镜
document.getElementById("modalimg").style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod='scale',src=\"" + reallocalpath + "\")";
} else {
var reader = new FileReader();
reader.readAsDataURL(fil[0]);
reader.onload = function () {
document.getElementById("modalimg").src = reader.result;
}
}