探索網頁,我發現這個網站的這個驚人的效果http://www.guglieri.com/ (滾動效果) 我想建立一個腳本,重新創建相同的效果,但我不明白的邏輯行爲。滾動固定部分
基本上,我開始計算身高,將每個部分的位置屬性設置爲「絕對」,並將身體的高度與每個部分的高度相加。
現在,想法是將數據保存到數組中,當scrolltop爲主或等於此偏移量時...我開始通過translateY屬性將區域移動到頂部,當它停止移動時等於視口的高度。但現在我卡住了!
我搜索了一個已經存在的插件,但我沒有找到任何東西。所以,請幫我找到了解決辦法;)
概念在這裏:
var
body = $('body')
section = $('section');
section.each(function(i,el){
$(el).css({
'z-index' : section.length - i
})
body.height(body.height()+$(el).height());
});
body {
margin: 0;
}
section {
width: 100vw;
height: 100vh;
position: absolute;
top: 0;
left: 0;
font-family: sans-serif;
}
section.a {
background-color:indianred
}
section.b {
background-color:royalblue
}
section.c {
background-color:deepskyblue
}
section.d {
background-color:tomato;
}
section div {
position: absolute;
top: 50%;
left: 50%;
transform:translate(-50%,-50%);
font-size: 6em;
color: #FFF;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<section class="a">
<div>a</div>
</section>
<section class="b">
<div>b</div>
</section>
<section class="c">
<div>c</div>
</section>
<section class="d">
<div>d</div>
</section>