gpt4 book ai didi

javascript - 我怎样才能整理这个简短的 javascript 代码?

转载 作者:行者123 更新时间:2023-11-30 12:27:42 24 4
gpt4 key购买 nike

jsfiddle:http://jsfiddle.net/s1d368ce/

我试图让三个单独的标题(h1、h2 和 h3)在用户向下滚动页面时淡出。我希望每个 header 的淡出速度都比上面的稍微慢一些,所以我的代码分为三个部分,如下所示。但是,只有最后一位有效(即 h3 淡出,但 h2 和 h1 不淡出。如果我删除 h3 的最后一部分,则 h2 淡出但 h1 不会。如果我删除 h3 和 h2 javascript,则 h1淡出。)

我想知道是否有人可以告诉我如何重新组织代码以使其工作?

请看我的代码演示;只有 h3 的代码有效。但是,如果我要删除 javascript 代码的“scroll-fade-long-2”部分,那么 h2 会淡出,但 h1 不会。 ??

非常感谢!

jQuery(function($){		
//Scroll fade
var divs = $('.scroll-fade');
$(window).on('scroll', function() {
var st = $(this).scrollTop();
divs.css({
'margin-top' : -(st/3)+"px",
'opacity' : 1 - st/135
});
});

//Scroll fade long
var divs = $('.scroll-fade-long');
$(window).on('scroll', function() {
var st = $(this).scrollTop();
divs.css({
'margin-top' : -(st/3)+"px",
'opacity' : 1 - st/255
});
});


//Scroll fade long2
var divs = $('.scroll-fade-long-2');
$(window).on('scroll', function() {
var st = $(this).scrollTop();
divs.css({
'margin-top' : -(st/3)+"px",
'opacity' : 1 - st/355
});
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<h1 class="scroll-fade">header 1</h1>
<h2 class="scroll-fade-long">header 2</h2>
<h3 class="scroll-fade-long-2">header 3</h3>



<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>

最佳答案

My demo编辑:更新了不透明度。快速复制粘贴。有效。

您只需调用 $(window).on('scroll', function(){}); 一次。

var sf = $('.scroll-fade');
var sfl = $('.scroll-fade-long');
var sfl2 = $('.scroll-fade-long-2');

$(window).on('scroll', function(){
var st = $(this).scrollTop();
sf.css({
'opacity' : 1 - st/135,
'margin-top': -(st/3)+"px"
});
sfl.css({
'opacity' : 1 - st/255,
'margin-top': -(st/3)+"px"
});
sfl2.css({
'opacity' : 1 - st/355,
'margin-top': -(st/3)+"px"
});
});

另请参阅 Miro 的紧凑型解决方案:http://jsfiddle.net/ocntm9tx/5/

$(window).on('scroll', function(){
var st = $(this).scrollTop();
for(i=1; i<=3; i++){
$('.scroll-fade-'+i).css({
'opacity' : 1 - st/(i*100),
'margin-top': -(st/3)+"px"
});
}
});

关于javascript - 我怎样才能整理这个简短的 javascript 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28773229/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com