最新回答 / illa
<script type="text/javascript">window.onload=function(){ var obtn=document.getElementById("btn"); //获取页面的可视区域的高度 var clientHeight=document.documentElement.clientHeight||document.body.clientHeight; var timer=null; var isTop=true; obtn.onclick=functio...
2016-11-14
最赞回答 / 小菜鸟飞
点击回到顶部时,滚动条滚动,定时器中有istop=true这句话执行,因为开始滚动了,所以同时触发onscroll,而if(!istop)为false,不会停止定时器,如果在回到顶部的过程中,用户自己滚动,没有经过定时器,flag为false,!flag为true,执行停止定时器语句。
2016-09-22
最新回答 / ThinkSummer
1、尽量不要使用全局变量。每声明一个全局变量会占用一点内存,另外会造成变量名污染;2、var osTop = document.documentElement.scrollTop。如果写在外面,osTop只是在JS文件载入时获取滚动条距离顶部的高度,但有的时候,如页面在滚动的时候osTop的值是在不断变化的,所以我们要在绑定scroll事件中不断的去获取osTop的值;3、本人对JS也不是太熟悉,回答的也不一定正确。上面是我用jQuery写的咱们慕课网右侧返回顶部的代码。
2016-09-19
最新回答 / 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 || ...
2016-09-13
最新回答 / joyboy0405
我理解的是向下取整的关系,负数向下取整(Math.floor())绝对值比原来的数大,所以改为负数。虽然感觉正数向上取整(Math.ceil())一样=。=你可以自己试一试,希望对你有所帮助~
2016-07-29
最新回答 / joyboy0405
document.documentElement.scrollTop=document.body.scrollTop = osTop+ispeed;光写这句的话,你那个osTop的值是没有变化的,所以下面判断内的语句也就是清除定时器的操作是执行不了的。你看看是不是。
2016-07-25