jQuery slideToggle меню, которое будет свернуто, если - PullRequest
0 голосов
/ 06 июня 2011

все, кроме ссылки и тела открытого элемента div, щелкается после запуска события и только после его запуска

$(function() {
    $('#engageNetwork').bind('click', function() {
        $('.topNavSlide').stop(true,true).slideToggle(1000, 'easeOutExpo');
        $('a').click(function() {
            $('.topNavSlide').stop(true,true).slideToggle(500, 'easeOutExpo');
        });
    });
});

1 Ответ

1 голос
/ 06 июня 2011

Вы можете использовать селектор: not для привязки остальной части обработчика щелчков документа, который свернет меню.Селектор и привязка выглядят примерно так:

$(":not(#engageNetwork, #engageNetwork *)").bind("click", function(){
   $('.topNavSlide').stop(true,true).slideUp(1000, 'easeOutExpo');
});

(имеется вторая ссылка на #engageNetwork со звездочкой, чтобы убедиться, что любые элементы в #engageNetwork не будут связаны этим обработчиком событий.)

...