2011-12-13 55 views

回答

1
function pulse() { 
    $('#myElement') 
     .animate({opacity:1.0}, 300) 
     .animate({opacity:0.5}, 300, pulse); 
} 

pulse(); 

假設你的意思是300毫秒(http://jsfiddle.net/WtYSM/

+0

我認爲你需要在第一個回調中調用第二個animate(),反之亦然 – techfoobar

+0

不可以,第二個動畫中的自引用「脈衝」回調會重新啓動廁所頁。這是從堆棧溢出安全。 – izb

+0

是的。只有在完成第二個動畫()後,循環纔會重新啓動。但是會連續做[2]動畫調用[elem.animate()。animate()]確保第二個調用(1到0.5)僅在第一個調用完成後才被調用? – techfoobar

0

如果你想動畫元素的id爲FOO:

function toOpa05() { 
    $('#foo').animate({opacity: 0.5}, 300, toOpa1); 
} 
function toOpa1() { 
    $('#foo').animate({opacity: 1.0}, 300, toOpa05); 
} 
toOpa05(); 

工作示例這裏:http://jsfiddle.net/egVy4/

+0

謝謝!我如何將它應用於輸入字段文本?說文字值從黑到灰回退? – Hellnar

+0

您可以通過將上述代碼中的foo替換爲文本輸入的id來實現。但是上面的代碼改變了整個輸入字段的不透明性,而不僅僅是它內部的文本。 http://jsfiddle.net/egVy4/5/ – techfoobar