在页面中经常需要使用到返回顶部按钮,如果页面内容过多过长,手动滑动滚动条比较麻烦,所以一般会出现返回顶部按钮,一键回到顶部。本文实现的返回顶部的效果,将按钮在滚动条指定高度出现,并固定的页面指定位置。显示为一张图片,鼠标放上显示的是返回顶部文字提示。实现过程如下:
在html文件中:
<div id="return-top" class="top_e"> <img src="/static/img/totop.png" width="60" id="img" > <div style="width:60px;margin:auto;"> <p id='font' style="font-size:20px;margin-left:10px;display:none;">返回<br>顶部</p> </div> </div>
这里外面的div作为返回顶部的外层。
内部有两部分:
第一部分是一张图片,从阿里矢量图片库中下载好的矢量图片,如图:
当然也可以根据自己的需要,选择其他样式和颜色。
第二部分是’返回顶部‘四个字,这里需要换行,所以加了标签。
css样式代码
.top_e{ position:fixed;right:10px;bottom:40px; background:rgba(204,200,255,0.6); border-radius:15px; cursor:pointer; display:none; width:60px; height:60px; } .top_e:hover{ color:white; background:#1296DB; }
上面代码实现了对返回顶部按钮样式的控制,其中position是固定按钮的位置。
当然你也可以根据自己的需要进行调整。
JS代码:控制按钮的显示和消失,也实现了图片和文件的动态转换。
// 控制按钮的显示和消失 $(window).scroll(function(){ if($(window).scrollTop()>300){ $('#return-top').fadeIn(300); } else{$('#return-top').fadeOut(200);} }) // 点击按钮,使得页面返回顶部 $("#return-top").click(function(){ scrollTo(0,0); }); // 鼠标悬浮按钮之上,图片消失,文字显示 $(".top_e").mouseover(function(){ $("#img").hide(); $("#font").show(); }) //鼠标离开,文字消失,图片显示。 $(".top_e").mouseout(function(){ $("#font").hide(); $("#img").show(); })
JS实现滚动条滚到页面距离底部300PX时执行事件的方法
scrollTop为滚动条在Y轴上的滚动距离。
clientHeight为内容可视区域的高度。
scrollHeight为内容可视区域的高度加上溢出(滚动)的距离
$(window).scroll(function(){ var scrollTop = $(this).scrollTop(); var scrollHeight = $(document).height(); var windowHeight = $(this).height(); if(scrollHeight-scrollTop-windowHeight <=300){ //当滚动条滚动到距离底部还有300px的时候加载类容 }else{ //当滚动条滚动到距离底部大于300px的时候加载类容 } });
效果演示
显示返回顶部按钮
鼠标悬浮于上,显示文字提示
看到本文右侧的点赞和踩了吗,当他滚动到页面底部的时候会自动隐藏,可以试一试
参考链接: