ExtJs中tabPanel放置iframe无法兼容IE6的解决方法

本文介绍了一种在ExtJS中解决IE6下iframe加载问题的方法,通过动态设置iframe源来避免显示空白的问题,并提供了具体的实现代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 
在tabPanel中放置iframe打开一个页面是extjs的最简便的用法,这样iframe.src中的页面就可以包含<script src=name.js></script>了。但不知道是不是普遍问题,这种方法不适用IE6,即便在装有IE7的遨游上也无法使用,打开的标签页是个空白的,要通过右键单独刷新这个tabPanel中的iframe才可显示出src中的页面。下面的方法,解决了这一问题,适用IE6、IE7、FF等。不知道我的遇到的问题是不是共性的,请大家指正,或提出更好的方法。
  1. function addTab(url,id){
  2. var tmptab = tabPanel.getItem(id);
  3. if(tmptab)tabPanel.remove(tmptab,true);
  4. tabPanel.add({
  5. id: id,
  6. title: id,
  7. //IE6是无法解析 创建iframe前 指定的src属性 的
  8. //html: '<iframe src="'+ url +'" name="ifr" id="ifr" ',
  9. html:'<iframe src="" name="ifr" id="ifr" width="100%" marginwidth="0" height="100%" marginheight="0" scrolling="auto" frameborder="0"></iframe>'
  10. }).show();
  11. //必须要show()完之后,而且不可以用Ext.get("ifr").src = url;
  12. ifr.location.href = url;
  13. }
复制代码
(文/yongzhi 出处/博客园)

注:在 ExtJs 中 tabPanel 加 iframe 可能有严重性能问题,关闭 tab ,不会释放iframe的内存.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值