zepto的返回顶部scrollTop的动画解决方法

写移动端的时候,引入的zepto.js里的animate不包括scrollTop,所以返回顶部的时候,没有动画的效果。这里我使用的是setInterval的方法。代码详情如下

 

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>goTop</title>
	<script src="zepto.min.js" type="text/javascript" ></script>
	<style type="text/css" media="screen">
		*{
			margin: 0;
			padding: 0;
		}
		.goTop{
			position: fixed;
			bottom: 20px;
			right: 20px;
			width: 100px;
			height: 50px;
			border: 1px solid #ccc;
			text-align: center;
			line-height: 50px;
			background: pink;
		}
		.hello{
			width: 600px;
			height: 2000px;
			background: yellow;
		}
	</style>
</head>
<body>
	<div class="goTop">返回顶部</div>
	<div class="hello"></div>
</body>
<script type="text/javascript">

	$(function(){

		$('.goTop').click(function(){

			//获取当前scrollTop的位置
			var curScroll = $(document.body).scrollTop();

			//上升的位移
			var speed = 5;

			if(curScroll>0){
				setInterval(timer,1);
			}

		    console.log(curScroll);

		    function timer(){

				if(curScroll>0){

					curScroll = curScroll-speed;
					$(document.body).scrollTop(curScroll);
					console.log(curScroll);

					if(curScroll<=0){

						$(document.body).scrollTop(0);
						clearInterval(timer);
						console.log("清除计时器")

					}
				}

			}

		})


	})
</script>
</html>

  

转载于:https://www.cnblogs.com/xuyan1/p/6928849.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值