Search code examples
jquerytogglestoppropagation

stopPropogration with .toggle() and jQuery


Looking to add stopPropogation to the following dropdown menu.

$(document).ready(function() {$('.js nav #nav-ads').toggle(
function() { 
    $('.dropdown-js').fadeIn();
    $('.js nav #nav-ads span').toggleClass('arrow-up').toggleClass('arrow-down');
},
function() { 
    $('.dropdown-js').fadeOut();
    $('.js nav #nav-ads span').toggleClass('arrow-down').toggleClass('arrow-up');
}
); 

});


Solution

  • Note: This method signature was deprecated in jQuery 1.8 and removed in jQuery 1.9. jQuery also provides an animation method named .toggle() that toggles the visibility of elements. Whether the animation or the event method is fired depends on the set of arguments passed. jQuery API


    Modern Solution

    $('.js nav #nav-ads').on('click', function (e) {
        $('.dropdown-js').fadeToggle();
        $('.js nav #nav-ads span').toggleClass('arrow-up arrow-down');
        e.stopPropagation();
    });