所以,我试图创建一个按钮,滚动到下一个部分或给定的像素高度。该网站分为三个部分,高度相同。因此,当用户进入网站并且其他所有内容都已加载时,按钮会淡入,单击该按钮将用户下拉到第二部分而不进行滚动,再次单击第三部分,这就是网站结束时所以到达第三部分时希望用户被带回家。这是我的代码:
<script type="text/javascript">
$(document).ready(function() {
if (document.body.scrollTop === 0) {
$("#down").fadeIn();
$("#down").click(function(event){
$("html, body").animate({scrollTop: "+=810px"}, 800);
});
}
window.onscroll = function(ev) {
if ((window.innerHeight + window.scrollY) >= document.body.offsetHeight) {
$("#down").fadeOut();
$("#top").fadeIn();
$("#top").click(function(event) {
$("html, body").animate({scrollTop: 0}, 800);
});
}
};
});
</script>
答案 0 :(得分:1)
我无法在jsfiddle中重现这个问题。
这不是你得到的吗?
如果它第一次运行,而不是后续运行,是否有任何非静态组件未被提及?
如果正在加载动态组件,事件委派可能是您问题的解决方案。
$("body").on("click", "#down", function(e){
// do stuff
});
事件委托示例:http://jsfiddle.net/gd6J2/1/