$(this)超时(再次)

时间:2014-05-28 16:56:16

标签: javascript jquery

使用优秀的animate.css我希望使用pulse动画为pulsating事件中的hover课程中的所有元素制作动画。当鼠标指针离开元素时,动画应该停止。

以下代码有效:

$('.pulsating').each(function() {
    $(this).hover(
        function() {$(this).addClass('animated infinite pulse');},
        function() {$(this).removeClass('animated infinite pulse');}
        ); // hover
}); // each .pulsating

然而,当鼠标消失时,我希望转换能够持续一段时间。所以,经过一些尝试和搜索,我实现了这个功能:

$('.pulsating').each(function() {
    $(this).hover(
        function() {$(this).addClass('animated infinite pulse');},
        function() {var el=$(this); window.setTimeout(function(){el.removeClass('animated infinite pulse');}, 2000);} 
        ); // hover
}); // each .pulsating

正如你所看到的,我保留了对$(this)的引用,但它不起作用:悬停的元素无限地保持无限的脉动。

0 个答案:

没有答案