Domanda

Ho impostato alcune schede jQuery per iniziare senza nessuna scheda selezionata in questo modo:

$('#tabs').tabs( { selected: -1 } );  

Quindi ho anche un collegamento separato che quando premuto deve deselezionare tutte le schede.

$("#deselectButton").click(function(){      
    $('#tabs').tabs( 'select' , -1 )
});

o

$("#deselectButton").click(function(){      
    $('#tabs').tabs( 'selected' , -1 )
});

Il clic su deselectButton deseleziona il contenuto delle schede, tuttavia il titolo delle schede rimane attivo con la classe "ui-tabs-selected ui-state-active".

Qual è il modo corretto di deselezionare tutte le schede?

È stato utile?

Soluzione

Prova questo codice:

$("#deselectButton").click(function(){          
    $('#tabs').tabs( 'selected' , -1 )
    $(".ui-tabs-selected").removeClass("ui-state-active").removeClass("ui-tabs-selected");
});

Altri suggerimenti

jQuery 1.10 richiede che l'opzione comprimibile sia pieghevole.

$('#tabs').tabs('option', 'collapsible', true);
$('#tabs').tabs( 'option', 'active', false );

Se si utilizza l'interfaccia utente jQuery versione 1.9+, il codice CSS è cambiato in:

$('#tabs').tabs('option', 'active', false);

o

$('.ui-tabs-active').removeClass('ui-tabs-active ui-state-active');

come da commenti qui sotto. Grazie

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top