因此,我有一組名爲.project-slide
的元素,一個接一個。其中一些將具有.colour-change
類,如果他們確實有這個類,他們將在看到時改變.background
元素的背景顏色。這是我到目前爲止有:https://codepen.io/neal_fletcher/pen/eGmmvJ動畫不透明進出滾動
但我希望獲得這樣的事情:通過網頁http://studio.institute/clients/nike/
滾動到看到背景的變化。所以在我的情況下,我想要的是,當一個.colour-change
進入視圖時,它會緩慢地對.background
元素的不透明度進行動畫製作,然後在我滾過它時緩慢地對不透明度進行動畫製作(在滾動上進行動畫處理)。
關於我如何實現這一點的任何建議將不勝感激!
HTML:
<div class="project-slide fullscreen">
SLIDE ONE
</div>
<div class="project-slide fullscreen">
SLIDE TWO
</div>
<div class="project-slide fullscreen colour-change" data-bg="#EA8D02">
SLIDE THREE
</div>
<div class="project-slide fullscreen">
SLIDE TWO
</div>
<div class="project-slide fullscreen colour-change" data-bg="#cccccc">
SLIDE THREE
</div>
</div>
的jQuery:
$(window).on('scroll', function() {
$('.project-slide').each(function() {
if ($(window).scrollTop() >= $(this).offset().top - ($(window).height()/2)) {
if($(this).hasClass('colour-change')) {
var bgCol = $(this).attr('data-bg');
$('.background').css('background-color', bgCol);
} else {
}
} else {
}
});
});