为了账号安全,请及时绑定邮箱和手机立即绑定

回到顶部效果

难度初级
时长40分
学习人数
综合评分9.63
249人评价 查看评价
9.9 内容实用
9.6 简洁易懂
9.4 逻辑清晰
尤克里里的方法不错 返回顶部过程中和滚动条拼速度体验不好 最好是直接点击页面就停下来  示例
1.在页面添加一个空div css类似 #scrollStop{width: 100vw;height: 100vh;background-color: #transparent;position: fixed;top: 0;left: 0;}
2.给返回顶部按钮添加一个z-index=1(确保按钮不被div给盖住了)
3.js的onscroll中获取#scrollStop并添加点击事件scrollStop.onclick{clearsetInterval(timer)};
感觉留了不少坑给我们………………
在onlick里面先if判断一下定时器是不是空的吧 不然
if(timer){
clearInterval(timer);
}
再写timer=setInterval blalabalbal

最新回答 / ThinkSummer
1、尽量不要使用全局变量。每声明一个全局变量会占用一点内存,另外会造成变量名污染;2、var osTop = document.documentElement.scrollTop。如果写在外面,osTop只是在JS文件载入时获取滚动条距离顶部的高度,但有的时候,如页面在滚动的时候osTop的值是在不断变化的,所以我们要在绑定scroll事件中不断的去获取osTop的值;3、本人对JS也不是太熟悉,回答的也不一定正确。上面是我用jQuery写的咱们慕课网右侧返回顶部的代码。

最新回答 / qq_匹夫_5
不会的  好好看看你写的代码

已采纳回答 / 慕名不来
第6行只是定义下这个变量而已,请注意在30行那儿给isTop赋值为true了,所以第6行不管你是什么值都无所谓。第19行那儿你不赋值为false的话,那就停止不了定时器(因为定时器停止的条件是isTop为false),也就达不到终止动画的效果。至于第19行的问题,肯定是先判断完条件,执行相应的动作后,再把条件变量复位啊,你如果放到16行前的话,那条件判断始终成立,也就是说每向上滑动一下,就停止不滑动了,那还玩毛啊
不重置样式你怎么改背景图片?
setInterval 之前先clear一下就是每次点击把之前的定时器清除掉 就可避免定时器重复执行 导致变快
刚开始很难过没有效果,然后发现css里的注释是假!的!

最新回答 / qq_不能自理的猪_0
window.onload=function(){    var btn=document.getElementById('btn');    var timer=null;    //页面可视高度区域    var clientHeight=document.documentElement.clientHeight;    //在第二页面显示回到顶部按钮    window.onscroll=function(){        var osTop=document.body.scrollTop || ...
这里写background的时候:老师用到的是top left和left 40px;
我写的是top和bottom,也是一样的效果。
由于btn的宽高都为40是固定的所以可以用我的这样的写法。
给大家一个参考意见吧。
这里我用了个left:90.5%;
实现了差不多的效果。。
我觉得写代码还是能省则省的哈,给大家也提供个这样的思路。
这个点击点击。。莫名的喜感
完全没有任何效果,连回到顶部的按钮都没看到....
简单,易懂,明了
课程须知
1.掌握HTML+CSS基础知识;2.了解JavaScript中onclick事件、简单dom操作、定时器等知识。
老师告诉你能学到什么?
1.掌握两种实现顶部效果的方法; 2.学会定时器、window.onscroll等知识

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消