2016-01-11 64 views
0

我有一個腳本,當您向下移動時允許滾動滾動,但我無法獲得它以允許用戶向上滾動回滾。粘滯/捕捉滾動不向上滾動

var items = $(".item"); 
var animating = false; 

$(window).scroll(function() { 
    clearTimeout($.data(this, 'scrollTimer')); 
    if (!animating) { 
     $.data(this, 'scrollTimer', setTimeout(function() { 
      items.each(function(key, value) { 
       if ($(value).offset().top > $(window).scrollTop()) { 
        animating = true; 
        $('body').animate({ scrollTop: $(value).offset().top + 'px' }, 1000); 
        setTimeout(function() { animating = false; }, 500); 
        return false; 
       } 
      }); 
     }, 50)); 
    } 
}); 

http://jsfiddle.net/kZY9R/77/

+0

請檢查更新小提琴'HTTP:// jsfiddle.net/kZY9R/78 /' –

回答

1

你要做

var body = $("html, body"); 

$(body).stop().animate({ scrollTop: $(value).offset().top)}, 1000,'swing'); 

閱讀body和srolling,火狐東東d html

Check Working Fiddle

+0

我怎樣才能得到它具有相同的行爲粘回去了,雖然什麼時候? – user2252219

+0

我已更新小提琴中的固定滾動。 –

+0

嗨。對不起,睡着了。是否可以從視口頂部按百分比設置偏移量。我希望它不會捕捉到視口的頂部,而是在一半以下。 – user2252219