2012-06-08 54 views
0

我嘗試將這樣的功能組合起來,但不會爲我工作。聯合功能

  1. 面板將顯示1秒
  2. 面板向上滑動
  3. 幻燈片BTN會走出視口的一個很短的時間
  4. 結束:幻燈片BTN顯示在正確的位置

jsFiddle

$(document).ready(function(){ 

    $(".btn-slide").click(function(){ 
     $("#panel").slideToggle("slow"); 
     $(this).toggleClass("active"); return false; 
    }); 

    $('#panel').html('This text will dissapear after 3 seconds.'); 
    timeout = setTimeout(function() { 
     $('#panel').animate({marginTop: '-450px'}, 500); 
    }, 

    function aha() { 
     $('.btn-slide').animate({marginTop:'-40px'}, 350); 
     $('.btn-slide').animate({marginTop:'470px'}, 350); 
    }), 1000) 

});​ 

我需要你的幫助。

+0

'setTimeout'接受一個函數和一個整數,而不是兩個函數。另外,你有一個語法錯誤:'Uncaught SyntaxError:Unexpected token)' – Eric

+0

你能解釋一下按鈕按下是如何適合你的一系列操作的嗎? – Eric

回答

0

將一個回調函數作爲參數綁定到slideToggle函數。

$("#panel").slideToggle("slow",function(){ 
    ..do this when the slide has completed 
}); 
+0

所有你提到的事情的綁定回調應該完成工作。 Jquery支持它們的所有定時功能(例如動畫)。 –