我有以下 jQuery 代码:
if($(window).scrollTop()>=220) {
$('#header nav').slideUp('fast').removeClass('fixed');
} else {
$('#header nav').addClass('fixed').slideDown('fast');
}
发生的情况是,当用户向下滚动页面超过 220 像素时,标题将获得固定类别,然后向下滑动。当用户再次向上移动时,标题将向上滑动并删除其固定类别。用户永远不会看到标题移回其原始位置,因为它在 180 像素左右完成,因此位于屏幕之外。
但问题是,当用户滚动时,它会一遍又一遍地进行幻灯片,这并不是我想要的。我已经查看了 stop 方法,但停止当前动画也不是我所需要的。关于如何解决此问题有什么想法吗?
上面的代码是一个函数,调用方式如下:
$(window).scroll(function() {
fixedHeader();
});
最佳答案
您想要更改 if($(window).scrollTop()>=220) {
行来检查用户是否已从 0-220 转换到 220+ 或相反比每个滚轮都被使用。
包含大量注释的示例教程可以是 found here.
关于jQuery:当用户滚动经过某个点时滑动标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10752559/