闪烁的jQuery .animation()

时间:2011-07-23 15:19:33

标签: javascript jquery css animation jquery-animate

我目前正在使用jquery-animate-colors为边框的闪烁设置动画,但我认为我的代码可以使用一些清理工具。有什么方法可以解决以下问题?

highlightRow = function(row, count) {             
if (count == null) {                            
    count = 0;                                    
}                                               
$(row).animate({                                
    "border-color": "#3737A2"                     
}, {                                            
    duration: 250,                                
    complete: function() {                        
    return $(row).animate({                     
        "border-color": "#FFFFFF"                 
    }, {                                        
        duration: 250,                            
        complete: function() {                    
            if (count === 0) {                      
                return highlightRow(row, count += 1); 
            }                                       
        }                                         
    });                                         
    }                                             
});                                             
};                                                

所以我试图让它只是闪烁边框颜色两次。我发现试图动画border-color,除了十六进制代码之外你不能使用任何东西。 transparentnone两者都没有动画。

无论如何,寻找一些帮助来清理它!提前谢谢:)

1 个答案:

答案 0 :(得分:10)

有一个名为'pulsate'的jQuery UI效果 - http://jqueryui.com/demos/effect/ - 可能值得一看?

或者,如果您正在寻找自定义解决方案,请尝试以下操作。您可以链接动画效果,它们都将附加到动画队列中;

higlightRow = function(row) {
  $(row).stop().animate({borderColor: "#3737A2"}, 250)
    .animate({borderColor: "#FFFFFF"}, 250)
    .animate({borderColor: "#3737A2"}, 250)
    .animate({borderColor: "#FFFFFF"}, 250);
}

应将边框颜色从#3737A2更改为#FFFFFF,更改为#3737A2,更改为#FFFFFF然后完成。