Pergunta

How is this possible? Following construction does not work:

$('.multibutton').click(function(event) {

    //.. some stuff before

    $(this).next('.menu').slideDown( "slow");

    // hide all other menus except this.next.menu
    $('.menu :not(this.next)').hide();

    //.. some stuff after
});

thank you

Foi útil?

Solução

$('.multibutton').click(function(event) {

    //.. some stuff before

    var elem = $(this).next('.menu').slideDown( "slow");

    // hide all other menus except this.next.menu
    $('.menu').not(elem).hide();

    //.. some stuff after
});

Outras dicas

Try using the jQuery.not() function to get a list of the elements not including the items specified :

$('.multibutton').click(function(event) {

    //.. some stuff before

    $(this).next('.menu').slideDown( "slow");

    // hide all other menus except this.next.menu
    $('.menu').not($(this).next()).hide();

    //.. some stuff after
});

More information on jQuery.not().

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top