2014-11-09 128 views
0

我是jquery的新手,盡力學習儘可能多的自己,但我被困在這裏。我正在嘗試獲取一個位於固定位置的容器,以調整不透明度並更改滾動上的字體顏色。我使用下面的代碼獲得了不透明度部分。如何合併其它CSS改變這個喜歡改變從#000000字體的顏色#ffffff在jquery上滾動更改一個div的多個css元素

jQuery(function ($) { 
    function EasyPeasyParallax() { 
    var scrollPos = $(document).scrollTop(); 
    var targetOpacity = 1; 
    scrollPos < 400 ? targetOpacity = '0.' + (scrollPos * 100)/10 : targetOpacity; 
    $('.headcon').css({ 
     'background-color': 'rgba(255, 255, 255, ' + targetOpacity + ')' 
    }); 
    console.log(scrollPos, targetOpacity); 
    }; 
    $(function() { 
    $(window).scroll(function() { 
     EasyPeasyParallax(); 
    }); 
    }); 
}); 

回答

0

你不透明度的代碼是不正確的。你不應該在三元運算符的第二部分有一個任務。要回答您的原始問題,只需將更多屬性設置附加到傳遞給css函數的對象。

jQuery(function ($) { 

    function EasyPeasyParallax() { 
     var scrollPos = $(document).scrollTop(); 
     // use the result of ternary operator to assign the opacity by 
     // rather than assigning in the second operator 
     var targetOpacity = scrollPos < 400 
           ? (scrollPos*100)/10 
           : 1; 
     $('.headcon').css({ 
      'background-color': 'rgba(255, 255, 255, '+ targetOpacity +')', 
      'font-color': '#ffffff' 
      }); 

     console.log(scrollPos,targetOpacity); 
    }; 

    $(function(){ 
     $(window).scroll(function() { 
      EasyPeasyParallax(); 
     }); 
    }); 

}); 
+0

非常感謝你的幫助:)最後一個問題,如果你不介意。當我回滾到頂部字體保持黑色。我將如何讓它恢復到原來的白色? – robgfl23 2014-11-09 06:15:18

+0

@ robgfl23關閉我的頭頂我想說,你想縮放顏色,以便它通過滾動變暗/變亮。或者,您可以在滾動位置到達特定點後,將其在黑/白之間翻轉。 'var fontColor = scrollPos <400? '#ffffff':'#000000';'然後在'css'函數中使用'fontColor'。 – tvanfosson 2014-11-09 15:30:04