使用我看到的一些例子,当我向下滚动页面时,我有一个返回顶部按钮以显示和工作,但有一种方法可以制作按钮粘在屏幕底部,直到你到达页脚,它会粘在页脚的顶部?
到目前为止,这是我的代码:
<script type="text/javascript" defer="defer">
$(window).scroll(function() {
if ($(this).scrollTop()) {
$("#toTop").fadeIn();
} else {
$("#toTop").fadeOut();
}
});
$("#toTop").click(function() {
$("html, body").animate({scrollTop: 0}, 1000);
});
</script>
<style type="text/css">
.backtotop_button_wrap {width:100%; background:white; height:auto;}
.backtotop_button_height {width:100%; height:55px;}
#toTop {display:none; position: fixed; right:0; bottom:0; width:100px; height:auto; background:white; float:right; padding:10px; text-align:center; border:1px solid black; line-height:12px;}
#footer {width:100%; height:500px; color:white; text-align:center; background:#313131; border-top:1px solid black;}
</style>
<div class="backtotop_button_wrap">
<div class="backtotop_button_height">
<div id="toTop">^<br />Back to the Top</div>
</div>
</div>
<div id="footer">
Footer
</div>
我也在这里做了一个Jfiddle:http://jsfiddle.net/0Lge6wqq/
答案 0 :(得分:5)
将#toTop的html位置更改为#footer。 当窗口达到页脚的高度时。 #toTop从固定变为相对。
if($(window).scrollTop() + $(window).height() < $(document).height() - $("#footer").height()){
$('#toTop').css("position","fixed"); //resetting it
$('#toTop').css("bottom","0"); //resetting it
}
else {
$('#toTop').css("position","relative"); // make it related
$('#toTop').css("bottom","60px"); // 60 px, height of #toTop
}
的jsfiddle