DataList页面嵌套使用iframe导致IE进度条停不下一直处于Loading状态

问题描述:
一个Iframe框架首页,嵌套使用了2个iframe标签。即在第二个ifame发出请求后,会出现IE浏览器进度条停不下来,一直处于loading的状态,但实际上页面能够正常加载并执行相应的程序。后来查了很多资料才发现,这是IE一个Bug。
解决办法:

方法一:
参考微软官方提供的解决办法:
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q320731

方法二:
使用setTimeout()函数解决,示例代码如下,
function doAction(url){
var href = "menuFrame.location.href='" + url + "'";
window.setTimeout(href,0);
window.status="eRedCIP:页面加载完成";
}

方法三:
由于使用了Ext的动态生成Tab的效果,方法二的方法不能使用。所以又折腾出了如下方法三,专门用于解决Ext的动态tab里包含Iframe造成IE6.0进度条偶数次点击加载不完全的问题.
如下:
<!-- 解决Iframe IE加载不完全的问题 -->
<a href="javascript:endIeStatus();" onclick="window.status=''; return true;" id="endIeStatus" style="display: none;"/>
/**
* 响应树节点单击事件
*/
function addTab(url,name,id,pathCh,icon){
if(url == '#'){
showOkTipMsg('此菜单还没有指定请求页面,请点击其它功能菜单.');
}else{
var n = mainTabs.getComponent(id);
if (!n) {
//如果对centerPanel进行遮罩,则可以出现阴影mainTabs
Ext.getCmp('centerPanel').getEl().mask('正在加载页面,请稍候...', 'x-mask-loading');
n = mainTabs.add({
'id':id,
'title':name,
closable:true,
iconCls:icon,
listeners: {activate: function(){Ext.getCmp('centerPanel').setTitle(pathCh)}},
html:'<iframe scrolling="auto" frameborder="0" width="100%" height="100%" src='+url+'></iframe>'
});
}
document.getElementById('endIeStatus').click();//解决Iframe IE加载不完全的问题
mainTabs.setActiveTab(n);
}}

//解决Iframe IE加载不完全的问题
function endIeStatus(){}

原文地址:https://www.cnblogs.com/weihengblogs/p/2772653.html