javascript实现回到顶部特效


Posted in Javascript onMay 06, 2015

HTML:

<input id="btn1" type="button" value="回到顶部" />

CSS:

#btn1{position:fixed;bottom:10px;right:10px;}

JS:

window.onload=funcition(){
  var oBtn=document.getElementById("btn");
  var timer=null;
  //申明一个变量看是否为系统还是用户滚动
  var sBys=true;
  window.onscroll=funcition(){
    if(!sBys){
      clearInterval(timer);
    }
    sBys=false;
  }
  oBtn.onclick=funcition(){
    timer = setInterval(funcition(){
      //获取scrollTop
      var scrollTop=document.documentElement.scrollTop||document.body.scrollTop;
      //当点击按钮回到顶部时计算缓冲速度
      var ispeed=Math.floor(-scrollTop/8);
      if(scrollTop==0){
        clearInterval(timer)
      }
      sBys=true;
      document.documentElement.scrollTop=document.body.scrollTop=scrollTop+ispeed;
    },30)
  }
}

知识点:

1.计算速度(缓冲)向下取整
2.当scrollTop==0时需要清除定时器
3.需要判断是用户还是js操作滚动条,如果是用户操作就清除定时器

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
jQuery 表单验证扩展代码(二)
Oct 20 Javascript
js二级地域选择的实现方法
Jun 17 Javascript
JavaScript—window对象使用示例
Dec 09 Javascript
JavaScript获得当前网页来源页面(即上一页)的方法
Apr 03 Javascript
正则表达式优化JSON字符串的技巧
Dec 24 Javascript
用JS实现简单的登录验证功能
Jul 28 Javascript
基于JavaScript实现淘宝商品广告效果
Aug 10 Javascript
浅谈angular2子组件的事件传递(任意组件事件传递)
Sep 30 Javascript
vscode下的vue文件格式化问题
Nov 28 Javascript
如何用webpack4.0撸单页/多页脚手架 (jquery, react, vue, typescript)
Jun 18 jQuery
微信小程序实现张图片合成为一张并下载
Jul 16 Javascript
Vue自定义全局弹窗组件操作
Aug 11 Javascript
javascript实现完美拖拽效果
May 06 #Javascript
avalonjs实现仿微博的图片拖动特效
May 06 #Javascript
avalonjs制作响应式瀑布流特效
May 06 #Javascript
javascript实现简单的html5视频播放器
May 06 #Javascript
js实现的四级左侧网站分类菜单实例
May 06 #Javascript
wangEditor编辑器失去焦点后仍然可以在原位置插入图片分析
May 06 #Javascript
完美实现仿QQ空间评论回复特效
May 06 #Javascript
You might like
一些关于PHP的知识
2006/11/17 PHP
繁简字转换功能
2006/07/19 Javascript
jquery判断单个复选框是否被选中的代码
2009/09/03 Javascript
12个非常有创意的JavaScript小游戏
2010/03/18 Javascript
jQuery1.4.2与老版本json格式兼容的解决方法
2011/02/12 Javascript
JQuery1.6 使用方法三
2011/11/23 Javascript
javascript中注册和移除事件的4种方式
2013/03/20 Javascript
jquery右下角弹出提示框示例代码
2013/10/08 Javascript
JS小游戏之宇宙战机源码详解
2014/09/25 Javascript
jQuery中map()方法用法实例
2015/01/06 Javascript
Bootstrap每天必学之导航组件
2016/04/25 Javascript
Bootstrap表单布局
2016/07/19 Javascript
AngularJS bootstrap启动详解及实例代码
2016/09/14 Javascript
JavaScript定义数组的三种方法(new Array(),new Array('x','y')
2016/10/04 Javascript
基于JavaScript实现的快速排序算法分析
2017/04/14 Javascript
Javascript创建类和对象详解
2017/05/31 Javascript
JS实现倒计时图文效果
2018/11/17 Javascript
layer页面跳转,获取html子节点元素的值方法
2019/09/27 Javascript
Python简单实现Base64编码和解码的方法
2017/04/29 Python
TensorFlow深度学习之卷积神经网络CNN
2018/03/09 Python
python基于Selenium的web自动化框架
2019/07/14 Python
python递归法解决棋盘分割问题
2019/07/17 Python
tensorflow之读取jpg图像长和宽实例
2020/06/18 Python
Python importlib模块重载使用方法详解
2020/10/13 Python
python 制作磁力搜索工具
2021/03/04 Python
css3 中实现炫酷的loading效果
2019/04/26 HTML / CSS
前端隐藏出边界内容的实现方法
2016/04/14 HTML / CSS
HTML5中实现拖放效果无须借助javascript
2012/12/26 HTML / CSS
捷克街头、运动和滑板一站式商店:BoardStar.cz
2019/10/06 全球购物
运动会稿件300字
2014/02/14 职场文书
英文推荐信格式范文
2014/05/09 职场文书
我的梦想演讲稿1000字
2014/08/21 职场文书
长城导游词300字
2015/01/30 职场文书
合同补充协议书
2016/03/24 职场文书
PHP中->和=>的意思
2021/03/31 PHP
Nginx 负载均衡是什么以及该如何配置
2021/03/31 Servers