我正在尝试将2个类添加到div中,第一个需要在滚动顶部等于一定量时添加,第二个添加IF滚动顶部大于一定量。
这是我的jQuery代码:
var Scroll = $(window).scrollTop();
var ScrollFXfullHeight = $('.header-wrapper').height();
if (Scroll == ScrollFXfullHeight) {
$("#navigation, .hidden_menu_link_container").addClass("fixed");
} else if (Scroll > ScrollFXfullHeight) {
$("#navigation, .hidden_menu_link_container, .stop_the_jump").addClass("thinner");
}
上面的解决方案显然使用了2个if语句,这里的问题是页面必须完全等于ScrollFXfullHeight才能添加第一个类,但是,如果你只是快速滚动它,那么事件不会被触发。
有没有办法说“WHEN Scroll == ScrollFXFullHeight添加类”所以即使滚动过去也会这样做?
答案 0 :(得分:1)
检查Scroll
是否大于或等于ScrollFXfullHeight
,然后检查您的元素是否已有类fixed
。如果没有,请添加它:
if (Scroll >= ScrollFXfullHeight) {
if(!$("#navigation, .hidden_menu_link_container").hasClass('fixed')) {
$("#navigation, .hidden_menu_link_container").addClass("fixed");
}
$("#navigation, .hidden_menu_link_container, .stop_the_jump").addClass("thinner");
}
这样,即使用户滚过该确切点,该类仍将被添加,但仅添加一次。我觉得你应该也检查一下thinner
课程是否已被添加,但这是你的电话