2011-12-15 173 views
1

可能重複:
How to loop a css background image with Jquery every few seconds?更改CSS顏色每秒

我不知道如何實現的顏色簡單的「動漫」效果改變每一秒,如果有一個動畫的動畫方式可能會更好。

我剛纔想是這樣的:

$('.box').delay(1000).css("background","red"); 

而且它不會在所有的工作(延遲功能無法正常工作)..反正我需要像他們兩個人:

$('.box').delay(1000).css("background","red"); 
$('.box').delay(1000).css("background","green"); 

讓它變成紅色 - >等一下變綠 - >再變紅。

這可能嗎?謝謝!

+0

http://stackoverflow.com/questions/1374867/how-to-loop-a-css-background-image-with-jquery-every-few-seconds < - 也許這個問題可以幫助嗎? – andrewdotnich 2011-12-15 22:32:05

+4

非常喜慶。 – justis 2011-12-15 22:32:21

+0

jquery.animate可以做的顏色:http://jqueryui.com/demos/animate/ – Guillaume86 2011-12-15 22:35:28

回答

10
$(document).ready(function() { 
setInterval(function() { 
    $('body').animate({ backgroundColor: 'red' }, 300) 
    .animate({ backgroundColor: 'green' }, 300); 
    }, 1000); 

}); 

http://jsfiddle.net/theSifter/yR6jc/

3
setInterval(function() { 
    var box = $('.box'); 
    if (box.css('background-color') == 'red') { 
     box.css({'background-color':'green'}); 
    } 
    else { 
     box.css({'background-color':'red'}); 
    } 
}, 1000); 
2
<h1 id="ho">Ho ho ho!</h1> 
<h2 id="mc">Merry Christmas!</h2> 

<script> 
    var flag = false; 
    setInterval(function() { 
     flag = !flag; 
     $("#ho").css("background", flag ? "red" : "green"); 
     $("#mc").css("background", flag ? "green" : "red"); 
    }, 1000); 
</script>