2011-02-10 78 views
2

我只花了相當一段時間試圖讓某些文本閃爍,讓它從一種顏色到另一種顏色來回變換。聽起來很簡單,結果是非常困難。簡單的事情會是這樣的:在JQuery中爲閃爍效果生成動畫顏色變化

$('#myElement').animate({color:black}, 100); 
$('#myElement').animate({color:white}, 100); 

把這個循環,重複五次說,我們完成了。那麼,即使安裝了Jquery顏色插件也不起作用(這會阻止瀏覽器報告錯誤,但不會使代碼正常工作..)。

什麼工作是這樣的一個:

$('myElement').animate({top:0}, 100, function(){$('myElement').css('color','#000000');}); 
    $('myElement').animate({top:0}, 100, function(){$('myElement'.css('color','#ffffff');}); 

那就是:不要在animate函數做任何事情,只是把它作爲一個計時器,然後更改元素的CSS顏色值。而已。工作正常。順便說一下:如果你這樣做,並且想要在顏色閃爍時阻止其他事情發生,那麼你將不得不放置某種計時器或標誌 - 記住瀏覽器將會一直執行並且會繼續在顏色閃爍時並行執行。所以,如果你想要例如禁用用戶選擇另一個菜單選擇,而這個閃爍,你將不得不通過禁用其他選擇,直到這個動畫完成。

回答

4

鏈的動畫

$('#myElement').animate({color:black}, 100).animate({color:white}, 100); 

如果你想停止運行動畫使用jQuery .stop()

$('#myElement').stop();