1

例如下拉菜单,如果你渲染它并快速将鼠标悬停在“关于我们”按钮上并退出 5 次,停止菜单将打开几次然后停止。我需要它来做最后一个动画。

<script type="text/javascript">
    $(document).ready(function(){
        $("ul.topnav li a").mouseenter(function() {
            $(this).parent().find("ul.subnav").slideDown('fast').show();
        });  


        $(".dropdown").mouseleave(function(){ 
            $(this).stop(true, false);
            $(this).parent().find("ul.subnav").slideUp('fast');
        });
    });

HTML:

<ul class="topnav">  
    <li><a href="#">Home</a></li>  
    <li class="dropdown">  
        <a href="#">About Us</a>  
        <ul class="subnav dropdown">  
            <li><a href="#">Sub Nav Link 1</a></li>  
            <li><a href="#">Sub Nav Link 2</a></li>  
        </ul>
    </li>  
</ul>
</script>
4

1 回答 1

5

使用 为您的过渡添加前缀.stop(true, true),例如:

$(this).parent().find("ul.subnav").stop(true, true).slideDown('fast').show();
于 2012-05-02T20:37:10.233 回答