dojo的TabContainer添加ContentPane假设closable,怎么不闭幕后予以销毁ContentPane

其主要思想是新的TabContainer的扩展类,重载其closeChild属性,使得其在关闭子容器时。不调用该子容器的destroyRecursive方法。

define([ "dojo/_base/declare", "dijit/layout/TabContainer" 

], function(declare,TabContainer) { 
        return declare("comm.comm.ExTabContainer", TabContainer, { 
                closeChildAction:"destroy", 
                closeChild: function(/*dijit/_WidgetBase*/ page){ 
                        // summary: 
                        // Callback when user clicks the [X] to remove a page. 
                        // If onClose() returns true then remove and destroy the child. 
                        // tags: 
                        // private 
                        var remove = page.onClose && page.onClose(this, page); 
                        if(remove){ 
                                this.removeChild(page); 
                                if (this.closeChildAction=="destroy"){ 
                                        // makes sure we can clean up executeScripts in ContentPane onUnLoad 
                                        page.destroyRecursive(); 
                                } 
                        } 
                } 
    }); 

 }); 

然后创建TabContainer的方法例如以下
var tc=new ExTabContainer({ 
  style : "height: 100%; width: 100%;", 
  isLayoutContainer : true, 
  region : 'center', 
  closeChildAction:"hide" 
}); 

版权声明:本文博主原创文章,博客,未经同意不得转载。

posted @ 2015-09-16 14:39  mengfanrong  阅读(341)  评论(0)    收藏  举报
众安尊享e升2025版 - 底部横幅广告
尊享e升 2025版
🚀 全新升级
百万医疗险全面升级 守护健康人生
✓ 一般医疗300万
✓ 重疾600万
✓ 6年保证续保
✓ 1万免赔额
600万
最高保障
首月特惠价
低至1元起
🛡️ 立即投保