jQuery 简单点
$(function(){
$(window).scroll(function(){
var t = $(window).scrollTop();
if(t>200){ $(".top").stop().fadeIn()}else{$(".top").stop().fadeOut();}
})$(".top").click(function(){$("body,html").stop().animate({scrollTop:0},1000); })
})
$(function(){
$(window).scroll(function(){
var t = $(window).scrollTop();
if(t>200){ $(".top").stop().fadeIn()}else{$(".top").stop().fadeOut();}
})$(".top").click(function(){$("body,html").stop().animate({scrollTop:0},1000); })
})
2016-08-26
记得要清空clearInterval, 如果点击两次返回顶部按钮, 这时会创建两个函数并执行他们,就有两个interval, timer是全局变量, 所以timer的值是后一个interval ID,第一个interval是清除不了的, 已经被覆盖, 所以第一个interval会永远执行下去, 可以分别创建timer,就是把timer变成局部变量,放在onclick事件里. 但是这个时候timer就不是全局变量, Onscroll事件就会出错. 这里的最好的方式是每次进入单击事件,清空上一个timer,只执行这次interval, 防止其他的interval造成干扰
2016-08-25
这里 window.onscroll事件的目的,就是在使用鼠标上的滚动按钮滚动页面时停止interval, 这里用的方法是添加一个isTop,然后在你鼠标滚动的时候,就触发window.onscroll,执行里面的函数, 由于页面是一点点的滚动,函数会被执行多次, 这个时候就不会执行interval, 要把这里onscrll函数体执行完后才执行setinterval,但是在执行onscorll第二次的时候, !flage=true,清除interval,这个时候就不在向上滚动了
2016-08-25