2014-06-06 48 views
0

嘿,我想知道是否有人可以幫助我一些基本的JavaScript。是否有可能使用jQuery的.css來使用異步回調來交錯改變CSS?異步使用.css jquery

E.g.

jQuery("#topbar").css({transition: "background-color 10s ease", background: "rgba(255, 255, 255, 0.6)"}); 
      //jQuery("#topbar").css({transition: "background-color 10s ease", background: "rgba(255, 255, 255, 0.0)"}); 

在這個例子中,我可以改變的第一個功能,使其運行在回調函數的第二個評論的功能,成爲asysnchronous?

感謝

+0

我明白你想要什麼,但是你說的方式有點令人困惑。你不'使用jquery .css',你'在運行時使用jQuery'應用樣式/轉換' – cr0ss

+0

這不是異步的意思。異步意味着一件事不必等待另一件事 - 它們的運行時間不同步。你想要的是相反的。 –

+3

使用'.animate()'排隊css變化 – Popnoodles

回答

1

選項#1

使用純CSS3來代替。看看使用CSS動畫,而不是用Javascript排隊它們。對於現代瀏覽器來說,這是毫無意義的。請參閱MDNW3C

選項#2

你必須設置超時延遲第二jQuery的線的執行。像這樣:

jQuery("#topbar").css({transition: "background-color 10s ease", background: "rgba(255, 255, 255, 0.6)"}); 

setTimeout(function() { 
    jQuery("#topbar").css({ 
     background: "rgba(255, 255, 255, 0.0)"} 
    ); 
}, 10000); 

現在,如果你想讓它們循環,你必須建立兩個函數之間的遞歸關係。希望這可以幫助!

+0

真的!對我的部分進行監督 – trentmwillis

+1

有三個和四個選項 - 使用'$ .queue'或$ $ .animate',這樣它就可以輕鬆地'$ .dequeue'd或'$ .stop'ped。 – Popnoodles

+0

工作過。我會研究CSS動畫。 – Mantissa