我有这段代码
if (winScroll < min_scroll){
$("header").hide().removeClass("header-vu");
} else if (min_scroll < winScroll < max_scroll){
$("header").show();
} else {
$("header").addClass("header-vu");
}
我不明白为什么如果存在第二个(否则为if),第三个条件(否则)不会被表达。
有没有人有想法?
答案 0 :(得分:0)
问题(至少, a 问题)在这里:
} else if (min_scroll < winScroll < max_scroll){
归结为
} else if ((min_scroll < winScroll) < max_scroll){
// Note ^ ^
内部(min_scroll < winScroll)
将被强制转移到0
(如果它是假的)或1
(如果它是真的)。所以你得到:
} else if (0 < max_scroll){
或
} else if (1 < max_scroll){
你可能意味着:
} else if (min_scroll < winScroll && winScroll < max_scroll){
// ^^^^^^^^^^^^^
答案 1 :(得分:0)
您不能在两个操作中使用相同的操作数,您需要执行两个单独的操作:
} else if (min_scroll < winScroll && winScroll < max_scroll) {