如果元素是动画的,我如何找到jQuery?

99 javascript jquery animation

我试图在页面上移动一些元素,并且在动画发生的时候,我希望将"overflow:hidden"应用于elemnt,并在动画完成后将"overflow"返回"auto".

我知道jQuery有一个实用程序函数,可以确定某个元素是否正在动画,但我无法在文档中的任何位置找到它

Jam*_*mes 197

if( $(elem).is(':animated') ) {...}
Run Code Online (Sandbox Code Playgroud)

更多信息:http://docs.jquery.com/Selectors/animated


要么:

$(elem)
    .css('overflow' ,'hidden')
    .animate({/*options*/}, function(){
        // Callback function
        $(this).css('overflow', 'auto');
    };
Run Code Online (Sandbox Code Playgroud)

  • 我认为它不支持 CSS 动画。 (2认同)

小智 5

或者,要测试某些内容是否未设置动画,您只需添加"!":

if (!$(element).is(':animated')) {...}
Run Code Online (Sandbox Code Playgroud)

  • 很好,只是现在它与已接受的答案重复.BTW社区批准的意义是什么? (2认同)