IE兼容小知识点

location.origin

location.origin 可以获取 当前协议 + 域名,但是低版本IE是不支持这个属性的,需要做一下兼容:

var origin = window.location.origin;
 
// protocol 当前 URL 的协议
// hostname 当前 URL 的主机名
// port 当前 URL 的端口号
if (!origin) {
    origin = window.location.protocol + '//' + window.location.hostname + (window.location.port ? ':' + window.location.port : '');
}
下载文件有中文

在IE浏览器中下载文件的时候,路径中有中文的时候请求无法到达后台的情况

前端页面:

var  fileName = "文件名称";
location.href = "/wealth/downloadFile?fileName="+encodeURI(encodeURI(fileName));
 
后台接受:
String  fileName = java.net.URLDecoder.decode(request.getParameter("fileName"), "utf-8");

发送http请求时,路径中带有中文的情况报错,需要进行转码:
/getCandidateList/"+base64.encodeToString(b)(编码后可能会有“/”符号)

去除“/”的方法:

base64.encodeBase64URLSafeString(b)

参数b中有中文信息,需要进行转换

传送门

ie不兼容的几个js问题及解决办法

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容