衝突

2015-10-13 141 views
1

我有這樣的代碼衝突

if (winScroll < min_scroll){ 
     $("header").hide().removeClass("header-vu"); 

    } else if (min_scroll < winScroll < max_scroll){ 
     $("header").show();     
    } else { 
     $("header").addClass("header-vu");     
    } 

我不明白爲什麼第三個條件(人)是不是表示如果第二(否則如果)存在。

有沒有人有想法?

+0

min_scroll Diptox

回答

0

問題(至少,一個問題)是在這裏:

} 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){ 
//        ^^^^^^^^^^^^^ 
0

不能使用相同的操作數在兩個操作,你需要做的兩個獨立操作:

} else if (min_scroll < winScroll && winScroll < max_scroll) {