【发布时间】:2020-06-26 18:34:49
【问题描述】:
我想将默认的 Bootstrap 导航栏组件更改为移动设备上的向下钻取导航。 这样做吧,我添加了一些 JavaScript 代码来更改我的菜单。
这是我目前使用的代码:https://codepen.io/cray_code/pen/dENeKM
它工作正常,但在桌面上,菜单在单击后打开,而不是悬停事件。
对于桌面视口有以下代码:
$('.mega-menu-trigger').bind('click' ,function(e){
e.preventDefault();
var current = $(this).next('.mega-menu');
$('.mega-menu-trigger').not(this).removeClass('active');
$(this).toggleClass('active');
$('.mega-menu').not(current).removeClass('open').addClass('closed');
if( !current.hasClass('open') ){
current.removeClass('closed').addClass('open');
} else {
current.removeClass('open').addClass('closed');
}
});
我尝试将mouseenter 的代码更改为:
$('.mega-menu-trigger').bind(mouseenter: function(e){
但这不起作用,我的问题是离开链接后菜单保持打开状态。
我想我必须与mouseleave 合作,但我不知道怎么做。
有什么方法可以将菜单从点击更改为悬停?
【问题讨论】:
-
你不能用css来做这个吗?
-
我试过了。但可以弄清楚如何。
标签: javascript jquery css bootstrap-4 mouseevent