如何使div在两个高度之间出现和消失?

时间:2012-01-31 21:16:53

标签: javascript jquery html html5

我在这里有一些Javascript使得div出现在页面上的某个高度但是我想让它在另一个高度再次消失,因此它显示在一个像素范围之间。例如,我希望div出现在500的高度,并在700处再次消失。

以下是我的代码:

<script type="text/javascript">
    $(document).ready(function(){
        $("#testdiv").hide();
        $(window).scroll(function(){
              if($(window).scrollTop()>500){
                 $("#testdiv").fadeIn();
              }else{
                 $("#testdiv").fadeOut();
              }
        });
    });
</script>

非常感谢帮助, 莱恩。

2 个答案:

答案 0 :(得分:2)

我会在这里查看jQuery waypoints插件:

http://imakewebthings.github.com/jquery-waypoints/

它将为您提供所需的结果,而无需硬编码500或700.您可以在html中定义'标记',当您滚动到它们时将触发事件。将一个标记设置为500,将另一个标记设置为700,您应该很高兴。

答案 1 :(得分:2)

这有用吗?我添加了一个额外的检查以查看scrollTop是否高于700.如果是,请隐藏#testdiv

<script type="text/javascript">
    $(document).ready(function(){
        $("#testdiv").hide();
        $(window).scroll(function(){
              if($(window).scrollTop()>500){
                 if($(window).scrollTop()>700){
                    $("#testdiv").fadeOut();
                 }
                 else
                 {
                    $("#testdiv").fadeIn();
                 }
              }
        });
    });
</script>