2016-05-19 70 views
0

我想實現像下圖中: enter image description here變化div的不透明度onscroll

我不能使這項工作與此代碼。 https://jsfiddle.net/3vy66a7o/

$(window).on('scroll', function() { 
    $('.object').each(function() { 
    var offset = $(this).offset().top; 
    var height = $(this).outerHeight(); 
    offset = offset + height/2; 

    if (offset < 100) { 
    $(this).fadeTo("fast", 0); 
    } else if ((offset > 200) && (offset < 300)) { 
    $(this).css("opacity": "1"); 
    } else if (offset > 300) { 
    $(this).fadeTo('fast', 1); 
    } 
else { 
    $(this).css("opacity": "0"); 
} 
}); 
}); 
+0

附加jquery庫在你的小提琴 – Rikin

+0

它附加! – user4075462

+0

不是一個答案,但你可以使用'switch'語句而不是所有'else if'來清理代碼。 (個人喜好,但我認爲它會看起來更乾淨) – DBS

回答

1

檢測窗口上的元件位置和相應的行動。

var offset = $(this).offset().top - $(window).scrollTop(); 

https://jsfiddle.net/3vy66a7o/3/

難道這就是你要找的效果?

+0

這已經非常接近,只是效果的平滑性丟失了。非常感謝你 – user4075462