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