$(document).ready(function () {
            $("#AOPTopMenu>ul>li").click(function () {
                $(this).children(".SecondMenuBar").slideDown();
             }).hover(function (e) {
                var d = $(this).children(".SecondMenuBar");
                var r = e.relatedTarget;
                if (r != d[0]) {
                    d.slideUp();
                                    }
            })
        })这种写法语法对吗,实现时:click了#AOPTopMenu>ul>li的内容后,下滑出一界面,但鼠标刚想放倒下滑界面,却因为离开了#AOPTopMenu>ul>li的区域,界面自动滑回去了,
现在想实现点了#AOPTopMenu>ul>li的内容后,下滑出一界面,鼠标可以放进改下滑的界面,且当鼠标从该界面拿走再上滑回去。

解决方案 »

  1.   

    原来是用hover写的如下,现在就是想改进原来的方法:不是鼠标一放到菜单就出下滑界面,而是点一下再出下滑界面,其他的(鼠标可以放进改下滑的界面,且当鼠标从该界面拿走再上滑回去。
    )不变。
      

  2.   

    不用hover就行了,用mouseover和mouseout
      

  3.   

     刚才忘贴代码了:
            $(document).ready(function () {
                $("#AOPTopMenu>ul>li").hover(function () {
                    $(this).children(".SecondMenuBar").slideDown();
                   }, function () {
                    $(this).children(".SecondMenuBar").slideUp();
                   })
            })
      

  4.   

    回复:cyoubunketu同学:先谢谢你,但是要求是:点一下再出下滑界面,其他的(鼠标可以放进改下滑的界面,且当鼠标从该界面拿走再上滑回去。
    )不变。
      

  5.   


    $(document).ready(function () {
      $("#AOPTopMenu>ul>li").mouseover(function () {
          $(this).children(".SecondMenuBar").slideDown();
      });
      $("#AOPTopMenu>ul>li").click(function () {
          $(this).children(".SecondMenuBar").slideDown();
      });
      $("#AOPTopMenu>ul>li").children(".SecondMenuBar").mouseout(function () {
          $(this).slideUp();
      });
      
    })
     
      

  6.   

    cyoubunketu你好,这种写法我试了,由于菜单是横向多个,程序里click后slideDown()了,如果不触动mouseout方法默认下滑的界面都没滑上去,有层覆盖问题出现了。另外还有别的错误。