Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 鼠标离开后,jQuery显示隐藏延迟仍在运行_Javascript_Jquery - Fatal编程技术网

Javascript 鼠标离开后,jQuery显示隐藏延迟仍在运行

Javascript 鼠标离开后,jQuery显示隐藏延迟仍在运行,javascript,jquery,Javascript,Jquery,我设置了。延迟停止在每个鼠标上显示效果,但现在它在每个鼠标上显示刚刚延迟的效果 似乎。延迟不是正确的方式来识别鼠标移到最短时间后显示的部分 $(document).ready(function(){ $('.article_wrapper').hover( function(){ $(this).find('.actions').delay(800).show(300); }, function(){ $(this).find('

我设置了。延迟停止在每个鼠标上显示效果,但现在它在每个鼠标上显示刚刚延迟的效果

似乎。延迟不是正确的方式来识别鼠标移到最短时间后显示的部分

$(document).ready(function(){
    $('.article_wrapper').hover(
    function(){
        $(this).find('.actions').delay(800).show(300);
    },
    function(){
         $(this).find('.actions').hide(200);
    });

});
我还可以使用哪些函数?

在jQuery 1.9+上,您可以使用这些函数清除应用于特定队列的所有先前延迟: 虽然这仍然没有记录

更新:事实上,为了不破坏隐藏动画,您应该使用clearQueue

在jQuery 1.9+上,可以使用清除应用于特定队列的所有先前延迟: 虽然这仍然没有记录

更新:事实上,为了不破坏隐藏动画,您应该使用clearQueue


不幸的是,这是一个有点恼人的问题。解决这个问题的正确方法是使用setTimeout,这里将详细解释

这可以很容易地根据您的需要进行修改

编辑


正如更好的答案所指出的,这对于动画来说不是必需的,我将把它留在这里,因为它与大多数非动画延迟相关。

不幸的是,这是一个有点恼人的问题。解决这个问题的正确方法是使用setTimeout,这里将详细解释

这可以很容易地根据您的需要进行修改

编辑


正如更好的答案所指出的,这不是动画所必需的,我将把它留在这里,因为它与大多数非动画延迟相关。

你救了我一天!谢谢你的帮助;如果没有动画链接,则使用.stoptrue、true就足够了,但是如果您添加更多动画,则.finish是未来的证明。您保存了我的一天!谢谢你的帮助;如果没有动画链接,那么使用.stoptrue、true就足够了,但是在添加更多动画的情况下,.finish是未来的证明。我不会使用setTimeout,因为它的实现比使用简单的.finish或.stop更复杂。我完全同意,a.Wolff有一个更好的答案。我不会使用setTimeout,因为它的实现比使用简单的.finish或.stop更复杂。我完全同意,a.Wolff有一个更好的答案。
$(document).ready(function(){
    $('.article_wrapper').hover(
    function(){
        $(this).find('.actions').delay(800).show(300);
    },
    function(){
        $(this).find('.actions').clearQueue().hide(200);
    });
});