是否可以通过修改下面的代码在滚动多个像素后滚动到#id(并且下面的div不向上滚动)?
$(".bhome").click(function() {
$('html, body').animate({
scrollTop: $("#someid").offset().top
}, 2000);
});
这不是最后的解决方案,但这可以帮助您迈出第一步:
$(document).ready(function(){
var numberOfPixels = 20;
var lastScrollTop = 0;
$(window).scroll(function(event){
var st = $(this).scrollTop();
if (st > lastScrollTop){
// downscroll code
if($(window).scrollTop() > numberOfPixels) {
$('html, body').animate({
scrollTop: $("#someid").offset().top
}, 2000);
//$(window).off('scroll');
}
} else {
// upscroll code
}
lastScrollTop = st;
});
});