头闻号

华容县恒兴建材有限公司

UV涂料|花岗岩|大理石

首页 > 新闻中心 > 科技常识:Discuz7.2 IE9兼容性写法 杜工完全修补方案
科技常识:Discuz7.2 IE9兼容性写法 杜工完全修补方案
发布时间:2024-11-29 16:44:09        浏览次数:4        返回列表

今天小编跟大家讲解下有关Discuz7.2 IE9兼容性写法 杜工完全修补方案 ,相信小伙伴们对这个话题应该有所关注吧,小编也收集到了有关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″ /> 替换为 复制代码代码如下: <!–[if lte IE 8]> <meta http-equiv=”x-ua-compatible” content=”ie=7″ /> <![endif]–> <!–[if IE 9]> <meta http-equiv=”x-ua-compatible” content=”ie=9″ /> <![endif]–> 2.修改include/js/common.js 把ajaxpost函数替换为: 复制代码代码如下: function ajaxpost(formid, showid, waitid, showidclass, submitbtn, recall) { var waitid = typeof waitid == 'undefined' || waitid === null ? showid : (waitid !== '' ? waitid : ''); var showidclass = !showidclass ? '' : showidclass; var ajaxframeid = 'ajaxframe'; var ajaxframe = $(ajaxframeid); var formtarget = $(formid).target; var handleResult = function() { var s = ''; var evaled = false; showloading('none'); try { s = $(ajaxframeid).contentWindow.document.XMLdocument.text; } catch(e) { try { s = $(ajaxframeid).contentWindow.document.documentElement.firstChild.wholeText; } catch(e) { try { s = $(ajaxframeid).contentWindow.document.documentElement.firstChild.nodevalue; } catch(e) { s = '内部错误 无法显示此内容'; } } } if(s != '' && s.indexOf('ajaxerror') != -1) { evalscript(s); evaled = true; } if(showidclass) { $(showid).className = showidclass; if(submitbtn) { submitbtn.disabled = false; } } if(!evaled && (typeof ajaxerror == 'undefined' || !ajaxerror)) { ajaxinnerhtml($(showid), s); } ajaxerror = null; if($(formid)) $(formid).target = formtarget; if(typeof recall == 'function') { recall(); } else { eval(recall); } if(!evaled) evalscript(s); ajaxframe.loading = 0; $('append_parent').removeChild(ajaxframe); }; 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; } _attachEvent(ajaxframe, 'load', handleResult); showloading(); $(formid).target = ajaxframeid; $(formid).action += '&inajax=1'; $(formid).submit(); return false; } 后台刷新缓存 搞定。

来源:爱蒂网