![](/img/trans.png)
[英]How do I dynamically show and hide an entire TabContainer using DOJO?
[英]How do I dynamically hide/show a single tab within dojo's tabContainer?
如果您使用dojo 1.7+,請使用dojo / dom風格進行更好的練習。
您可以通過將CSS添加到tab.controlButton來隱藏選項卡。 像這樣:
domStyle.set(tab.controlButton.domNode, "visibility", "hidden");
與其使用樣式,不如使用選項卡的disabled
屬性並覆蓋它添加的CSS。 像這樣:
require([ "dijit/layout/TabContainer", "dijit/layout/ContentPane", "dojo/domReady!" ], function(TabContainer, ContentPane) { var tabContainer = new TabContainer({}, "tabContainer"); tabContainer.startup(); var cp1 = new ContentPane({ title: "Pane 1", content: "Pane 1" }); tabContainer.addChild(cp1); var cp2 = new ContentPane({ title: "Pane 2", content: "Pane 2" }); tabContainer.addChild(cp2); //make sure you did not selected the tab you are going to hide tabContainer.selectChild(cp2); //disable the tab. It will be hidden by the css class 'dijitTabDisabled' cp1.controlButton.set('disabled', true); /* Note: cp1 = tabContainer.getChildren()[0]; cp2 = tabContainer.getChildren()[1]; so you could write: tabContainer.selectChild(tabContainer.getChildren()[1]); tabContainer.getChildren()[0].controlButton.set('disabled', true); */ });
.tundra .dijitTabDisabled { display: none !important }
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.10.4/dojo/dojo.js"></script> <link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/dojo/1.10.4/dojo/resources/dojo.css"> <link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/dojo/1.10.4/dijit/themes/tundra/tundra.css"> <div class="tundra"> <div id="tabContainer"> </div> </div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.