2015-10-07 56 views
0

爲什麼這些功能不能一起工作?當頁面滾動並且窗口寬度小於960px時,我想更改box-shadow。爲什麼不能window.scroll()和window.width()一起工作?

function hasScroll() { 
    $('.fixed').css({ 
     "height": "50px", 
     "box-shadow": "0px 79px 31px white" 
    }); 
} 
function changeShadow() { 
    $('.fixed').css({ 
     "height": "50px", 
     "box-shadow": "-3px 48px 44px white" 
    }); 
} 
$(window).scroll(function() { 
    if ($(this).scrollTop() >= 100) { 
     hasScroll(); 
    } 
    else if ($(this).scrollTop() >= 100 && $(window).width() < 960) { 
     changeShadow(); 
    } 
    else{ 
     notSctoll(); 
    } 
}); 

回答

1

問題在於你的if/else結構。當scrollTop()返回一個超過100的值時,總是會滿足第一個條件。因此,if else聲明不會被觸及。僅當第一個if條件失敗時纔會觸及它。

嘗試改變第一if到:

if ($(this).scrollTop() >= 100 && $(window).width() > 960) 
相關問題