jquery函数中anime函数的问题

我实现了一个导航的下拉菜单功能,但是出现了动画堆栈的问题,就是鼠标快速移动的时候,动画堆栈里的动画不会清除,还是再按序执行。在原生JS中我知道可以clear定时器来取消动画堆栈中的动画。在jquery中我看见了clearqueue函数,但是具体的用法我不太清除。
附上我的jquery代码:

$(document).ready(
    function () {
        var $navtionli=$(".navtion>ul>li:parent");
        for(var i=0;i<$navtionli.length;i++){
            (function(i){
              $navtionli.eq(i).hover(function(){
                  $(this).find("ul").fadeIn();
              },
                function(){
                  $(this).find("ul").fadeOut();
                }
              )
            })(i)
        }

    }
)

这该怎么办呢..
我改成了这样也不行:

$(document).ready(
    function () {
        var $navtionli=$(".navtion>ul>li:parent");
        for(var i=0;i<$navtionli.length;i++){
            (function(i){
              $navtionli.eq(i).hover(function(){
                  $(this).siblings().clearQueue();
                  $(this).find("ul").fadeIn();
              },
                function(){
                    $(this).siblings().clearQueue();
                  $(this).find("ul").fadeOut();
                }
              )
            })(i)
        }
    }
)

我把clearqueue函数换成stop()也不行...

阅读 3.7k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进