2013-04-11 69 views
1

問題的標題可能會讓人困惑,所以我要分析一下我的意思。我需要做的是以下的組合:三重jquery動畫和同時響應

  • 5元,工作類似於星級評價功能:每被點擊一次,以前所有的元素改變顏色(我已經通過動畫的寬度做到了這一點的背景股利)。

  • 5個元素,幾乎與上面相同,但具有不同的設計。功能是相同的,除了每個元素的寬度變化。

  • 5個元素與前一頁/下一頁的幻燈片。這兩個尋呼機都應該顯示與上一張/下一張幻燈片相關的一些文字的上一張/下一張幻燈片&。

我已經建立了所有這三個,他們的工作。但是我所遇到的麻煩是將所有這些結合在一起。例如,單擊第一個「插件」的第三個元素應該以相同的方式觸發其他兩個插件(即對於第二個插件,背景寬度爲第三個元素和第三個插件生成動畫,滑塊轉到第3張幻燈片包含所有相關信息,傳呼機號碼&文字正確更改)。

我沒有權限訪問我正在處理的代碼,但我也不想問任何人爲我的問題編寫這麼多代碼。

UPDATE:這裏是jsfiddle:http://jsfiddle.net/weborion/3S4WG/5/。 此外,@白鯨的特技替身:爲什麼是必要的這一部分: 功能doThis(回調){

// Initialise your schtick 

// fire off the callback 
if (typeof callback === "function") { 
    callback(); 
} 
+0

聽起來好像你錯過是每個插件中的一個回調函數,用於在正確的時間將事件彼此鏈接起來。 – 2013-04-11 20:58:38

+0

第一次完成後,這不會開始另外兩個動畫嗎?我希望所有三個人同時運行。 – webmaniacgr 2013-04-11 21:28:45

+0

不一定,您可以在每個插件的代碼中的任意時刻觸發回調。添加答案... – 2013-04-12 15:11:55

回答

0

我會做到這一點使用回調:

function doThis(callback) { 

    // Initialise your schtick 

    // fire off the callback 
    if (typeof callback === "function") { 
     callback(); 
    } 

    // some more schlep and tickle here 

} 

function doThat(callBack) { 
    // We'll fiddle-fart around here once the previous schtick is complete. 

    if (typeof callback === "function") { 
     callback(); 
    } 

    // Then finish out this particular animation 

} 

function doTheOther() { 
    // And finally we'll bring the madness to a halt. 
} 

doThis(doThat(doTheOther)); 
+0

爲了使它更具體,我用jsfiddle更新了我的問題。歡迎任何建議。 – webmaniacgr 2013-04-13 19:21:42