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(){}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)