jQuery队列函数只执行一次

时间:2017-04-06 20:23:31

标签: jquery css

如何在执行animated.css动画后将元素返回到其位置? 我使用这段代码,但它只执行了一次,然后下一次没有删除类

$(".stitch")
    .hover( function () {
        $(this).addClass("animated hinge");
    } )
    .delay( 5000 )
    .queue( function () {
        $(this).removeClass("animated hinge").dequeue();
    } );

我尝试了出队,接下来却没有工作。 提前感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

如果您想在动画完成后删除动画类,可以使用Animate.css文档中的简单jQuery插件代码。



var element = document.getElementById("element-id");
element.outerHTML = "";
delete element;

$.fn.extend({
    animateCss: function (animationName) {
        var animationEnd = 'webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend';
        this.addClass('animated ' + animationName).one(animationEnd, function() {
            $(this).removeClass('animated ' + animationName);
        });
    }
});

var $me = $( '#me' );

$me.hover( function () {
  $me.animateCss( 'hinge' );
} );

@import url( 'https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.5.2/animate.min.css' );