2012-02-09 104 views
0

我想要動畫我的#main div,以便它淡出並滑過我的#header div的頂部,當「工作」的想法被點擊時,然後淡出並滑下來,當「關於「或」聯繫人「鏈接被點擊。它錯了,它不是動畫。不知道爲什麼。誰能幫忙?Jquery DIV動畫

http://jsbin.com/odorah/edit#javascript,html,live

我知道,理想情況下.slideUp/.slideDown功能是爲了,但由於某些原因,它與我使用的fittext插件干擾。只是FYI

$(document).ready(function(){ 


    $('#workclick').click(function(){ 
         $('#main').animate({top:'-50%', opacity:'1'},{queue:false,duration:500, easing:"easeOutQuart"}); 
        }, function(){ 
         $('#header').animate({top:'0px', opacity:'0'},{queue:false,duration:200}); 
        }); 

        $('#aboutclick').click(function(){ 
             $('#main').animate({top:'50%', opacity:'0'},{queue:false,duration:500, easing:"easeOutQuart"}); 
            }, function(){ 
             $('#header').animate({top:'0px', opacity:'1'},{queue:false,duration:200}); 
            }); 
        $('#contactclick').click(function(){ 
                 $('#main').animate({top:'50%', opacity:'0'},{queue:false,duration:500, easing:"easeOutQuart"}); 
                }, function(){ 
                 $('#header').animate({top:'0px', opacity:'1'},{queue:false,duration:200}); 
                }); 
}); 
+1

您應該始終在您的問題中包含相關代碼。這樣,如果您鏈​​接的文件/頁面不再存在,您的問題仍然存在,並且可能對將來的其他人有用。 – 2012-02-09 18:42:53

+0

很好的建議。這個怎麼樣? – 2012-02-09 18:46:12

回答

1

好吧,找出你的問題。將您的第一個點擊功能替換爲以下內容:

$('#workclick').click(function(){ 
    $('#main').animate(
     {top:'-50%', opacity:'1'}, 
     { 
     queue:false, 
     duration:500, 
     complete:function(){ 
      $('#header').animate(
       {top:'0px', opacity:'0'}, 
       {queue:false,duration:200} 
      ); 
     } 
     } 
    ); 
}); 

您可以稍後添加轉換。事情是,JQuery有兩種形式的動畫功能。兩者都允許您在完成時回調。在這裏,他們是:

.animate(properties [, duration] [, easing] [, complete]) 
.animate(properties, options) 

來源:http://api.jquery.com/animate/

編輯:使用回調或排隊解決問題,因爲JQuery的動畫進行排隊。 jQuery無法制作同步動畫,請參閱:https://stackoverflow.com/a/1594085/844728

P.S.您必須將所有呼叫修改爲.animate,並更正此錯誤。

+0

哇,它做到了。謝謝!但它引發了另一個問題。有沒有一種方法來動畫整個#header div的高度,而不是設置預定義的高度?我的網頁基於%s,所以div的高度在屏幕尺寸上發生變化。 http://jsbin.com/ivewah/2/edit#javascript,html,live – 2012-02-10 00:10:07

+0

另外,當#main動畫向下時,動畫中會出現跳轉。這是什麼原因? – 2012-02-10 00:11:05

+0

我修正了動畫關閉時發生的跳躍。我認爲可能最好的做法是將#main div設置爲頁面頂部的動畫效果。不知道如何做到這一點。有任何想法嗎? http://jsbin.com/ivewah/5/edit – 2012-02-10 06:59:43