我把这个卷轴写到了顶级脚本。一切都很好但不是溢出:滚动我已应用于我的包装div。我需要溢出的原因:滚动是因为我有溢出:隐藏为html / body标签。这是我的自定义滚动条最多运行所必需的。我知道这会干扰这个脚本,但为什么呢?
该脚本只能部分运行。向下滚动时会出现“滚动到顶部”,但点击它后,它不会到达顶部。
我做错了什么?
这是Javascript:
<script>
jQuery(document).ready(function() {
var offset = 220;
var duration = 500;
jQuery(window).scroll(function() {
if (jQuery(this).scrollTop() > offset) {
jQuery('.back-to-top').fadeIn(duration);
} else {
jQuery('.back-to-top').fadeOut(duration);
}
});
jQuery('.back-to-top').click(function(event) {
event.preventDefault();
jQuery('#wrapper').animate({scrollTop: 0}, duration);
return false;
})
});
</script>
我的CSS
<style>
.back-to-top {
position: fixed;
bottom: 2em;
right: 0px;
text-decoration: none;
color: #000000;
background-color: rgba(235, 235, 235, 0.80);
font-size: 12px;
padding: 1em;
display: none;
}
</style>
最后这是Html:
<a href="#" class="back-to-top">Back to Top</a>
答案 0 :(得分:0)
你的问题在这里:
jQuery(window).scroll(function(){
if (jQuery(this).scrollTop() > offset) { }
});
你要做的是检查“窗口”对象是否滚动,如果当前的顶部偏移量大于“offset”变量,但是你尝试滚动“#wrapper”。
你应该做的是检查是否滚动了“#wrapper”并且是否达到了偏移量。
编辑:如果你想滚动“窗口”对象,你应该像下面的“body”DOM元素一样动画;)
$('body').animate({scrollTop: 0}, duration);