discuz7.2发现IE9出现:
1. IE9快速发帖不跳转
2. IE9管理员处理帖子失败
3. IE9注册、登录不跳转,需要手动刷新
出现上述问题的原因是,原因:
1. AJAXPOST函数判断out了
2. 动态创建iframe时各浏览器处理方式不同
解决方法是,
1. 修改templates/header.htm
把
<meta http-equiv="x-ua-compatible" content="ie=7" />
替换为
<meta http-equiv="x-ua-compatible" content="ie=9" />
2.修改include/js/common.js
修改ajaxpost函数如下处:
if(!ajaxframe) {
if (BROWSER.ie) {
ajaxframe = document.createElement('<iframe name="' + ajaxframeid + '" id="' + ajaxframeid + '"></iframe>');
} else {
ajaxframe = document.createElement('iframe');
ajaxframe.name = ajaxframeid;
ajaxframe.id = ajaxframeid;
}
ajaxframe.style.display = 'none';
ajaxframe.loading = 1;
$('append_parent').appendChild(ajaxframe);
} else if(ajaxframe.loading) {
return false;
}
为:
if(!ajaxframe) {
try{
ajaxframe = document.createElement('<iframe name="' + ajaxframeid + '" id="' + ajaxframeid + '"></iframe>');
}catch(e){
ajaxframe = document.createElement('iframe');
ajaxframe.name = ajaxframeid;
ajaxframe.id = ajaxframeid;
}
ajaxframe.style.display = 'none';
ajaxframe.loading = 1;
$('append_parent').appendChild(ajaxframe);
} else if(ajaxframe.loading) {
return false;
}