在早期的一个帖子(How to make a div appear and disappear between 2 heights?)中,我找到了一个脚本,要添加到我的html中,使div显示在指定的高度,然后在第二个指定的高度消失。
不幸的是,当我向上滚动时,div仍然显示 - 它们不会以它们出现的顺序消失。
任何人都知道是否有办法修改此脚本,以便当且仅当用户从页面顶部在632px和3352px之间滚动时,才能看到具有固定位置的div(具有id为2)? / p>
<script type="text/javascript">
$(document).ready(function(){
$("#two_b").hide();
$(window).scroll(function(){
if($(window).scrollTop()>632){
if($(window).scrollTop()>3352){
$("#two_b").fadeOut();
}
else
{
$("#two_b").fadeIn();
}
}
});
});
</script>
这是我正在努力的网站。这是出于教育目的而未经Theo Chocolate批准:http://www.saritaschaffer.com/wp
Eyal建议之后的新版本:
<script type="text/javascript">
$(document).ready(function(){
$("#two_b").hide();
$(window).scroll(function(){
if($(window).scrollTop()>632 && $(window).scrollTop()>3352){
$("#two_b").fadeOut();
}
else
{
$("#two_b").fadeIn();
}
});
});
</script>
答案 0 :(得分:1)
问题是您嵌套了if语句。
替换:
if($(window).scrollTop()>632){
if($(window).scrollTop()>3352){
$("#two_b").fadeOut();
}
else{
$("#two_b").fadeIn();
}
}
使用:
if($(window).scrollTop()>632 && $(window).scrollTop()<3352){
$("#two_b").fadeIn();
}
else{
$("#two_b").fadeOut();
}
发生的事情是,对于要淡出的元素,它们的scrollTop位置必须大于632且小于3352。 为了实现你的目标,你需要将这些语句联合起来,如果其中任何一个是假的,就把它放进去。