jquery slideUp菜单切换?

时间:2010-08-12 01:51:42

标签: jquery toggle

我有一个幻灯片菜单,其表现不正常,有时如果我快速滑过它,它可能会上下滑动4到5次。在其他时候,如果我在正确加载之前将鼠标悬停在它上面,菜单将会滑动并变为“正常”状态,这样如果我将鼠标悬停在它上面,它会在我有机会点击任何菜单项之前向下滑动。 / p>

以下是代码:

$(document).ready(function(){
 var opened = false;
 $("#menu_box").hover(function(){

  if(opened){
   $("#menu_box").animate({"top": "+=97px"}, "200");
  }

  else{
   $("#menu_box").animate({"top": "-=97px"}, "200");
  }


  $("#menu_content").slideToggle("200");
  $("#menu_tab .close").toggle();
  opened = !opened;


 });
})

代码最初是一个点击功能,而不是悬停,所以我尝试将其修改为以下内容:

$(document).ready(function(){
 $("#menu_box").hover(function(){

  $("#menu_box").toggle(function(){

   $("menu_box").animate({"top": "-=97px"}, "200");
   $("#menu_content").slide("200");

            });
 });
});

但这只会让菜单从右向左淡化 - 根本不会滑动。

我哪里错了? TIA!

1 个答案:

答案 0 :(得分:1)

使用bind mouseenter / mouseleave修复它而不是悬停!