在工作中,碰到的麻烦的问题之一,就是浏览器兼容的问题。在不同的浏览器上会出现不同的运行结果实在是一件让人头疼的事情。在这里我将最近碰到的几个浏览器兼容问题给大家分享一下。
1.下载文件的名称中带有空格
Java实现下载文件功能,常会用到如下这行代码:
getResponse().setHeader("Content-disposition","attachment; filename="+formatFileName);// 设定输出文件头
但是,当你使用火狐浏览器、且下载的文件的文件名含有空格时,下载时文件名中的空格就会变成乱码。所以当你有可能使用火狐、且文件名可能含有空格时,请修改一下这行代码:
getResponse().setHeader("Content-disposition","attachment; filename=\""+formatFileName+"\"");// 设定输出文件头
2.js延时功能
在网上百度“js延时”,会搜到如下代码:
Function test(){};
windos.setTimeout(test(),1000);
但是这样写无法在火狐上正常运行。需改成如下才可在火狐上也正常运行:
Function test();
windos.setTimeout(function(){test()},1000);
3.&.ajax([options])
&.ajax([options])是常用的ajax实现方法,在此方法的options中,有时在未设置“dataType”
属性的情况下,在遨游、谷歌等浏览器下也可正常实现功能。
但是,恩。。是的,还是在火狐浏览器下,必须设置dataType属性。当未设置dataType属性时,火狐浏览器会将数据默认当做xml文件来解析。