2012-07-05 83 views
0

我對Jquery比較新,所以如果這是顯而易見的,請隨時給我打耳光。我有這個小小的腳本,它會移動div的邊距並將瀏覽器滾動到新內容。應用時,頁面跳轉到頂部,然後跳回,然後動畫。這是JS。JQuery Animate函數在動畫之前跳到屏幕的頂部

 var onoff = true; 

    $('#archive').click(function() { 

     if(onoff == true) 
     { 
      $('#footer').animate({marginTop: 0}, 300); 
      onoff = false; 

     } else 
     { 
      $('html, body').animate({ 
       scrollTop: $("#archive").offset().top 
      }, 2000); 

      $('#footer').animate({marginTop: -171}, 300); 
      onoff = true; 
     } 

    }); 

任何幫助,將不勝感激和抱歉,如果這是一個重複的問題,我無法找到一個,如果它是。

感謝, -S

+0

沒有看到你的HTML我不能評論太多。但元素的樣式屬性對於元素的動畫效果非常重要。試想一下,嘗試使用填充或實現高度而不是使用邊距。 – antony 2012-07-05 23:51:12

+0

感謝您對高度和填充的建議。我肯定會嘗試實施。 – Hornerlas 2012-07-06 00:25:35

回答

2

可能是因爲你需要的preventDefault

$('#archive').click(function(evt) { 
    evt.preventDefault() 

...