jQuery实现“回到顶部”按钮功能
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>jQuery</title>
<style>
.back_top{
position: fixed;
background:gray;
color: #ffffff;
padding: 5px;
bottom: 30px;
right: 30px;
width: 42px;
text-align: center;
cursor: pointer;
}
</style>
</head>
<body>
<div>
<h1>回到顶部</h1>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<div class="back_top">回到顶部</div>
</div>
<script src="../js/vendor/jquery-3.2.1.min.js"></script>
<script>
//不够平滑
// $(".back_top").click(function(){
// $("body,html").scrollTop(0);
// })
//设置成平滑滚动
$(".back_top").click(function(){
//滚动时 滚动条离上部的距离
var distance = $("html").scrollTop() + $("body").scrollTop();
//设置滚动的总时间
var time=1000;
//间隔时间
var intervalTime=50;
var itemDistance=distance/(time/intervalTime);
var intervalId = setInterval(function(){
distance-=itemDistance;
if(distance<=0){
clearInterval(intervalId);
}
$("html,body").scrollTop(distance-itemDistance);
},intervalTime);
})
</script>
</body>
</html>