javascript - Jquery 菜单 - 切换问题

标签 javascript jquery menu

要查看问题是什么,请参阅 jsFiddle 上的代码.有没有一种方法可以将带有类“menutop”的列表设置为像“toogle”类(+)一样,换句话说,当单击帖子、页面等子菜单时显示。

困扰我的第二件事是如何将菜单设置为当一个子菜单打开时,用户单击其他子菜单时,前一个打开的子菜单会自动关闭。

最佳答案

我在 toogle 处理程序中命名该函数,并从 menutop 调用它,将 toggle 类元素设置为“this”,这样您看起来更熟悉。

我刚刚添加了一行以确保一次只能打开一个部分

function hitMe(){
   if ($(this) .hasClass('toggle-open')) {
     $(this) .removeClass('toggle-open') .addClass('toggle-closed') .empty('') .append('+') .parents('li') .children('ul') .slideUp(250);
     $(this) .parent('.menutop') .removeClass('menutop-open') .addClass('menutop-closed');
   }else{
     $(".toggle-open").parent().click();//closes the previously opened menu
     $(this) .parent('.menutop') .removeClass('menutop-closed') .addClass('menutop-open');
     $(this) .removeClass('toggle-closed') .addClass('toggle-open') .empty('') .append('–') .parents('li') .children('ul') .slideDown(250);
 }
}

$(".menutop").click(function(){
     hitMe.apply(
         $(this).find(".toggle")
     );
}
);

关于javascript - Jquery 菜单 - 切换问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6142866/

相关文章:

javascript - 增加 HTML 字符串中数字的值 (jQuery)

javascript - 单击时添加背景颜色

javascript - 如何更改 `use` 元素使用的子项的属性?

Jquery slider 效果

javascript - jquery:在 .find() 之后保留 <script> 标签

javascript - 悬停时更改导航栏中文本的颜色

windows - WINAPI,从菜单中删除弹出菜单

javascript - 根据页面加载时的下拉值显示文本框

javascript - 我希望子菜单在鼠标移到它上面时保持打开状态

html - 无法使用 Bootstrap 解决方案使不使用导航栏类的菜单居中