jquery悬停:mouseout没有开火

时间:2011-07-19 23:41:46

标签: jquery

以下是发生的事情(下面的代码块):

  1. 我正在研究一个简单的下拉导航(基于嵌套的UI)。
  2. 主要UL的ID为#nav。
  3. 悬停 - > mouseout功能 NOT 根本不会触发(所有浏览器)
  4. 第一次鼠标悬停后,任何后续鼠标悬停在Chrome 12.0.742.122,Safari(5.05),Opera(11.50),IE(9.0)中执行 NOT 动画(即slideDown) 0.8)。实际上它 ONLY 似乎适用于Firefox(5.0)。
  5. 我只在 Windows (7)上测试过。没有mac ......还没有。
  6. 让动画再次发挥作用的唯一方法是刷新页面
  7. 我是从一年多前发布的Nettuts tutorial中学到的,不能相信它已经过时了。
  8. 仅供参考:我在html页面的BOTTOM上调用jQuery和下面的脚本。
  9. 另一个FYI:我仍然相当绿色,所以清晰度作为回应将非常有帮助
  10. 有什么想法吗? 提前致谢, 轨枕

        var site = function(){
           this.navLI = $('#nav > li').children('ul').css('display','none').end();
           this.init();
        };
    
        site.prototype = {
           init: function(){
              this.setMenu();
           },
    
        // enables the slide down menu and adds support for ie6
            setMenu: function(){
               this.navLI.hover(function(){
                   // mouseover
                   $(this).find('> ul').stop(true, true).slideDown(250);
               }, function(){
                   // mouseout
                   $(this).find('> ul').stop(true, true).fadeOut(200);
               });
            }
        }
    
        new site();
    

1 个答案:

答案 0 :(得分:2)

您的display: none元素不需要CSS中的ul。查看此updated fiddle,您将看到所需的效果。