我想要将几个div层叠在一起,当用户滚动顶部的div时,上面的div将向上滚动以显示其后面的div。这是我的意思是:
我知道我需要改变文档的自然流动,所以我很可能需要使用绝对位置,但是我如何才能向上滚动每个div?我尝试在每个带有较低z索引的div上使用绝对定位,但我不知道如何向上滚动每个div。任何关于jQuery/JavaScript库或CSS技巧的指导都是非常有用的,或者是正确的方向。
发布于 2018-06-01 03:48:06
我不确定你到底想要什么效果,但下面的内容可能会对你有所帮助。您可以使用$(window).scroll
事件和$(window).scrollTop()
函数监听窗口的滚动位置。
$(window).scroll(function (e) {
var scroll = $(window).scrollTop();
if (scroll > 120) {
$(".div-1").slideUp();
}
if (scroll > 240) {
$(".div-2").slideUp();
}
});
section {
height: 900px;
}
div {
position: absolute;
left: 0;
top: 0;
display: flex;
align-items: center;
justify-content: center;
padding: 1rem;
width: 10rem;
height: 900px;
font-size: 2rem;
}
.div-1 { background: #faa; }
.div-2 { background: #aff; }
.div-3 { background: #ffa; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<section>
<div class="div-3">3</div>
<div class="div-2">2</div>
<div class="div-1">1</div>
</section>
https://stackoverflow.com/questions/50630904
复制相似问题