Как проверить, активна ли вкладка с вкладками Dojo
Как проверить, активна ли вкладка с контейнером вкладок dojo? (В JQuery это просто... вы можете использовать что-то вроде этого
if($("#accordion").accordion('option', 'active') == mytabNumber){
С dojo's, dijit.layout.TabContainer должен быть похожий способ сделать это без необходимости писать функцию litener и все такое прочее.
возможно что-то вроде...
if( dojo.byId("tab2"), {selected:true} ){
Заранее спасибо!
3 ответа
Вы можете сравнить виджет для вкладки с контейнером вкладок selectedChildWidget
свойство, то есть:
dijit.byId('tabContainer').selectedChildWidget == dijit.byId('tab2')
Если у вас уже есть ссылка на вкладку, вы можете просто проверить ее свойство selected, чтобы увидеть, выбран ли он, независимо от контейнера, в котором он находится.
var tab2 = dijit.byId('tab2');
if (tab2.get('selected')) { /* do stuff */ }
Я создал более подробный пример на http://jsfiddle.net/brianarn/ws28T/
Вот более полный код ответа, который дает окружающий код для Dojo 1.8:
require(["dijit/registry", "dojo/ready", "dojo/domReady!"], function (registry, ready) {
ready(function () { //wait till dom is parsed into dijits
if (dijit.byId('tabContainer').selectedChildWidget == dijit.byId('tab2'))
alert('Yes, we found it!');
});
});