2011-07-23 226 views
5

我目前使用jquery-animate-colors來動畫邊框的閃動,但我認爲我的代碼可以使用一些清理。什麼是更好的方法來處理以下問題?閃爍的jQuery。動畫()

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都沒有動畫。

無論如何,尋找一些幫助清理這個!感謝提前:)

回答

10

有所謂的「搏動」一個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,然後完成。

+0

是啊,這的好多了赫克 - 謝謝! – matt

+0

我看不到'borderColor'支持在這裏https://github.com/jquery/jquery-color#readme – Michele