2013-08-18 40 views
0

我有這樣的代碼你選擇一個jQuery動畫前多遠滾動激活

$(window).load(function() { 
      $elem1 = $('#div1'); 
      $elem2 = $('#div2'); 
      var scrollState = 'top'; 
      $(window).scroll(function() { 
       var scrollPos = $(window).scrollTop(); 
       if ((scrollPos != 0) && (scrollState === 'top')) { 
        $elem1.stop().animate({ 
         opacity: '1.0' 
        }, 300); 
        $elem2.stop().animate({ 
         marginLeft: '50px' 
        }, 300); 
        scrollState = 'scrolled'; 
       } else if ((scrollPos === 0) && (scrollState === 'scrolled')) { 
        $elem1.stop().animate({ 
         opacity: '0.0' 
        }, 300); 
        $elem2.stop().animate({ 
         marginLeft: '0px' 
        }, 300); 
        scrollState = 'top'; 
       } 
      }); 
}); //]]> 

當我爲你開始滾動向下滾動的jQuery儘快激活頁面。我希望能夠在激活之前選擇頁面的距離。

回答

0

你不能只檢查一下scrollPos的值嗎?

if(scrollPos > X && (scrollState === 'top')) { 
    //activate 
} else { 
    //do nothing 
} 
+0

你們工作。謝謝 – Dave

+0

需要其他東西嗎?如果這就是你需要的一切,你可以把這個標記爲正確的答案嗎? – klamoree

+0

如果((scrollPos> = 500)&&(scrollState ==='top')){ //激活 scrollState ='scrolled',則必須使用大於或小於符號。 ((scrollPos <500)&&(scrollState ==='scrolled')){ //什麼都不做 } – Dave

0

您可以使用$(document).scrollTop()docs)找出滾動的距離。