用户向下滚动并再次备份时应出现Div,但不会在加载时出现

时间:2014-09-24 16:14:31

标签: javascript html css scroll

我是javascript的新手,所以这对你来说可能很容易。我的网站( http://www.pjsmusic.com)需要200px的div,当用户向下滚动40px以显示时。我添加了一些javascript

$(document).scroll(function() {
    $('#jerkBox').toggle($(this).scrollTop()> 40);
});

但是,即使页面根本没有从顶部滚动,页面也会加载div。如何在用户滚动40px时显示此div,并在向上滚动页面超过40px时消失,但在加载时不显示?如果你访问链接,你会明白我的意思。提前谢谢!

2 个答案:

答案 0 :(得分:2)

JQuery .toggle()控制元素的display属性。您可以从一开始就在css上将其设置为display: none

#jerkBox {
    display: none;
}



$(document).scroll(function() {
    $('#jerkBox').toggle($(this).scrollTop()> 40);
});

#jerkBox {
    float: right;
    width: 200px;
    height: 200px;
    background: red;
    display: none;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="jerkBox">
    jerkBox div
</div>
<div style="height: 2000px">
    
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

默认情况下,您只需要隐藏#jerkBox。在元素的CSS样式中,将其设置为display: none或立即在脚本中的文档准备中隐藏它。

/* CSS */
#jerkBox {
  display: none;
}

/* JavaScript */
$(document).ready(function() {
  $('#jerkBox').hide();
}