2013-08-17 31 views
0

我在技術上是jQuery的新手,我試圖在我的代碼中儘可能多地實現以適應它。jQuery動畫和時機

所以我試圖讓一個div向上移動頁面,並在用戶點擊頁面上的任何位置時將不透明度更改爲1。

這裏是我的代碼:

$(document).ready(function(e) { 
    $("#body").click(function() { 
     setTimeout(function() { 
      $("#name").animate(function() { 
       bottom:"500px"; 
       opacity:"1"; 
      }, 1000); 
     }, 2000); 
    }); 
}); 

注意name是div我試圖動畫和body的ID就是一個id我給了HTML頁面的主體,這樣的動作當點擊頁面上的任何空白處時觸發。

+2

而問題是什麼? – adeneo

+0

只是谷歌「jQuery」和「計時器」,你會發現:http://api.jquery.com/delay/並像第一個答案說:不透明度從0到1,如果元素沒有不透明度0設置一個css規則。你什麼都看不到 – Mic

+0

我不是那種在CSS中忘記將不透明度設置爲0的轉儲! – SaucyGuy

回答

0

我會執行animate函數,就好像它是CSS一樣。您將添加分號到您的動畫屬性,他們應該是逗號。

$("#wrap").on('click', function() { 
    setTimeout(function(){ 
     $("#name").animate({ 
      bottom:"500px", 
      opacity:"1" 
     }, 1000); 
    }, 2000); 
}); 

這裏是我的FIDDLE

+0

謝謝,你的回答幫了我最大的忙。但是,事實證明,錯誤來自HTML(錯誤的ID使用)。 – SaucyGuy

+0

與我假設的#body有關。衛生署!無論如何,如果你發現我的幫助,你可以至少upvote這個答案或標記爲正確的:)乾杯。 –

0

如果您試圖使不透明度從0變爲1,則必須在css中將其初始設置爲0。當它已經是1時將它動畫到1將不會做任何事情!

+0

是的,它已經設置爲0在CSS – SaucyGuy

1

對象的屬性應該用逗號分隔,而不是分號。另外,animate需要一個對象,而不是一個函數。試試這個:

$("#name").animate({ 
    bottom: "500px", 
    opacity: "1" 
}, 1000); 
+0

感謝您的提醒!完全忘了:p – SaucyGuy