【发布时间】:2014-08-02 05:56:56
【问题描述】:
这是较大视口上的水平菜单,当您单击下拉菜单时,菜单会展开并且列表是内联的。附加了一个跨度以在父级别下的条带中显示列表。一切都很好,除了一件事,因为我的 jQuery 技能相当糟糕。
问题是如何使用这个 jQuery(使用这个 jQuery)并且只在 .navbar-nav li.dropdown 没有 .active 类但它的情况下从 html 中删除 .menu-open 类还必须在这里使用现有的东西,以便当用户在类外部单击时,当它没有类 .active 时,它会被删除,依此类推。请参阅下面的 Bin 链接。
这是我目前的演示:http://jsbin.com/micugu/1/
了解我的意思的最好方法是访问上面的这个链接,点击导航栏外的页面,你会看到(如果你的页面足够宽)我试图阻止的行为。
http://jsbin.com/micugu/1/edit
$(document).on('click touchstart', function (a) {
if ($(a.target).parents().index($('.navbar-nav')) == -1){
$('html').removeClass('menu-open');
}
});
还有这个:
$('.dropdown-toggle').click(function () {
if (!$(this).parent().hasClass('open')) {
$('html').addClass('menu-open');
} else {
$('html').removeClass('menu-open');
}
});
【问题讨论】:
标签: jquery twitter-bootstrap-3