j00m
j00m

Reputation: 501

close responsive menu when clicked/touch off

I have managed to get the menu to close when you click/touch outside of the menu but how do I stop the menu from closing when a link (within that menu) is clicked?

Here is my javascript:

            jQuery(document).click(function (event) {
                var clickover = jQuery(event.target);
                var _opened = jQuery(".navbar-collapse").hasClass("in");
                if (_opened === true && !clickover.is('.bs-navbar-collapse') && !clickover.hasClass("navbar-toggle")) {
                    jQuery("button.navbar-toggle").click();
                }
            });

Upvotes: 3

Views: 723

Answers (1)

dfsq
dfsq

Reputation: 193261

Stop event bubbling if it originates from navbar

jQuery(document).click(function(event) {
    var clickover = jQuery(event.target);
    var _opened = jQuery(".navbar-collapse").hasClass("in");
    if (_opened === true && !clickover.is('.bs-navbar-collapse') && !clickover.hasClass("navbar-toggle")) {
        jQuery("button.navbar-toggle").click();
    }
});

jQuery(".dropdown-menu").click(function(e) {
    e.stopPropagation();
});

Upvotes: 4

Related Questions