jQuery菜单-切换问题

问题描述

| 要查看有什么问题,请参阅jsfiddle上的代码。是否可以使用类“ menutop”设置列表以使其类似于“ toogle”类(+),也就是说,单击“帖子”,“页面”等子菜单时被揭示。 让我烦恼的第二件事是如何设置菜单的行为,使其在打开一个菜单用户单击其他子菜单时会自动将先前打开的子菜单关闭。     

解决方法

我在toogle处理程序中命名了该函数,并从菜单顶部将其设置为\“ 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\")
     );
}
);
    ,这是一个修订。添加了close all函数,然后我还为菜单顶部类添加了一个单击处理程序,该处理程序实际上是相同的操作以扩展选项卡。希望能帮助到你!