我想检测不同于scrollTop的位置,如下所示:我想如果窗口大于100px将一个类添加到body中,如果它再次大于150则删除该类并添加另一个类。
$(window).scroll(function() {
var scroll = $(window).scrollTop();
if (scroll >= 100) {
$('body').addClass('one');
}
else (scroll >= 150) {
$('body').addClass('two');
$('body').removeClass('one')
}
});
仅使用(如果条件)但不使用(else条件)处理多个位置。
答案 0 :(得分:0)
你的问题是基本的控制流程,你的第二个条件是多余的,因为如果滚动是> = 150那么肯定是> = 100这意味着你永远不会到达第二个块:
if (scroll >= 100) {
// execute if scroll is greater or equal to 100
} else if (scroll >= 150) {
// execute if scroll is NOT greater or equal to 100
// execute if scroll is greater or equal to 150
}
你需要像这样交换它们:
if (scroll >= 150) {
// execute if scroll is greater or equal to 150
} else if (scroll >= 100) {
// execute if scroll is NOT greater or equal to 150
// execute if scroll is greater or equal to 100
}
此处也有语法错误:else (scroll >= 150) {
应为else if (...