[英]How to have a div change opacity when scrolling? (Parallax)
我想知道如何创建像视差滚动效果一样的东西。 向下滚动的距离越远,div越不透明,并且在特定点之后,它又开始变得更加透明。 我知道JS / JQuery是必需的。 有人可以给我一个简单的方法来实现这一目标吗?
您应该使用scrolltop并实现关于数学的自己的逻辑,并且在滚动时div的不透明度会发生变化,这是以下功能:$(window).scrollTop()
我创建了一个小提琴来为您提供帮助:基本上,您可以侦听scroll事件,并根据方向控制css opacity属性。
var opc = 1;
var lastScrollTop = 0;
$(window).scroll(function(event){
var st = $(this).scrollTop();
if (st > lastScrollTop){
changeOpacity(0, -0.1)
} else {
changeOpacity(1, +0.1)
}
lastScrollTop = st;
});
function changeOpacity (limit, amount) {
if(opc !== limit){
opc = opc + amount;
$('#content').css('opacity' , opc);
}
}
http://jsfiddle.net/Mvf67/1909/
希望这可以帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.