滚动功能问题

时间:2013-05-11 12:13:21

标签: javascript jquery

如果滚动条处于某个位置,我正在尝试向标题添加某个类。

这是我的代码:

var headerHeight = $('header').height();
if($(window).scrollTop()==headerHeight) {
   $('header').addClass('scroll');
}

我得到了标题的高度,因为我有一个可以关闭的段落,我想在滚动条传递此值时添加类

问题是为什么我的功能不起作用

1 个答案:

答案 0 :(得分:1)

你的问题是你只是测试一次滚动位置而不是在滚动窗口时检查滚动位置。您需要做的是将函数附加到scroll事件本身,这样无论何时滚动文档,您的代码都将执行。像这样:

var headerHeight = $('header').height();
$(document).scroll(function(){
    var $this = $(this);
    if ($this.scrollTop() >= headerHeight) {
         $('header').addClass('scroll');
    }
});

如果您想在用户向上滚动高度时从.scroll移除<header>,则可以将以下else子句添加到上面的if

else {
     $('header').removeClass('scroll');
}