require(["dojo/on", "dojo/dom", "dojo/ready", "dijit/registry","dojo/dom-construct", "dijit/layout/TabContainer", "dijit/layout/ContentPane", "dijit/form/Button",
"dojo/dom-style"
], function(On, dom, ready, registry,domConstruct, TabContainer, ContentPane, Button, domStyle) {
ready(function() {
var tabContainer = registry.byId("center");
var tab1 = registry.byId("tab1");
var btn = registry.byId("show");
btn.on("click", function(e){
// if pane exist skip creation
if(!registry.byId("legendid")) {
var tab2 = new ContentPane({title:"List",id:"legendid",closable:true });
tabContainer.addChild(tab2);
tabContainer.selectChild(tab2)
}
})
});
});
html,
body {
width: 100%;
height: 100%;
margin: 0;
}
#center {
height: 100% !important;
}
<link href="//ajax.googleapis.com/ajax/libs/dojo/1.10.0/dijit/themes/claro/claro.css" rel="stylesheet" />
<script>
dojoConfig = {
parseOnLoad: true,
async: true
};
</script>
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.10.0/dojo/dojo.js"></script>
<body class="claro">
<div id="center" data-dojo-type="dijit/layout/TabContainer" >
<div id="tab1" data-dojo-type="dijit/layout/ContentPane" title="tab1">
<div data-dojo-type="dijit/form/Button" id="show"> Show Layer List</div>
</div>
</div>
</body>