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 相关文章推荐
JavaScript高级程序设计 阅读笔记(四) ECMAScript中的类型转换
Feb 27 Javascript
jQuery+css实现图片滚动效果(附源码)
Mar 18 Javascript
浅析jquery的js图表组件highcharts
Mar 06 Javascript
jQuery中val()方法用法实例
Dec 25 Javascript
JavaScript返回当前会话cookie全部键值对照的方法
Apr 03 Javascript
JavaScript实现点击按钮字体放大、缩小
Feb 29 Javascript
Vue2递归组件实现树形菜单
Apr 10 Javascript
详解原生js实现offset方法
Jun 15 Javascript
jQuery+HTML5实现WebGL高性能烟花绽放动画效果【附demo源码下载】
Aug 18 jQuery
Vue cli3 库模式搭建组件库并发布到 npm的流程
Oct 12 Javascript
Vue中的循环及修改差值表达式的方法
Aug 29 Javascript
分享15个Webpack实用的插件!!!
Mar 31 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-fpm的配置详解
2013/06/03 PHP
浅析SVN常见问题及解决方法
2013/06/21 PHP
基于thinkPHP3.2实现微信接入及查询token值的方法
2017/04/18 PHP
laravel 模型查询按照whereIn排序的示例
2019/10/16 PHP
jQuery1.6 使用方法二
2011/11/23 Javascript
javascript跟随滚动效果插件代码(javascript Follow Plugin)
2013/08/03 Javascript
JQuery操作单选按钮以及复选按钮示例
2013/09/23 Javascript
nodejs分页类代码分享
2014/06/17 NodeJs
14个有用的Jquery技巧分享
2015/01/08 Javascript
由ReactJS的Hello world说开来
2015/07/02 Javascript
javascript针对cookie的基本操作实例详解
2015/11/30 Javascript
dedecms页面如何获取会员状态的实例代码
2016/03/15 Javascript
关于cookie的初识和运用(js和jq)
2016/04/07 Javascript
javascript DOM的详解及实例代码
2017/03/06 Javascript
socket.io学习教程之基础介绍(一)
2017/04/29 Javascript
Vue.js样式动态绑定实现小结
2019/01/24 Javascript
Mpvue中使用Vant Weapp组件库的方法步骤
2019/05/16 Javascript
对vuex中getters计算过滤操作详解
2019/11/06 Javascript
[00:32]DOTA2上海特级锦标赛 Ehome战队宣传片
2016/03/03 DOTA
用Python程序抓取网页的HTML信息的一个小实例
2015/05/02 Python
Django学习笔记之Class-Based-View
2017/02/15 Python
Python实现矩阵转置的方法分析
2017/11/24 Python
python socket网络编程之粘包问题详解
2018/04/28 Python
利用python Selenium实现自动登陆京东签到领金币功能
2019/10/31 Python
项目资料员岗位职责
2013/12/10 职场文书
网上书店创业计划书
2014/01/12 职场文书
运动会稿件300字
2014/02/14 职场文书
报关员个人职业生涯规划书
2014/03/12 职场文书
班主任经验交流会主持词
2014/04/01 职场文书
代办委托书怎样写
2014/04/08 职场文书
班风口号
2014/06/18 职场文书
艾滋病宣传标语
2014/06/25 职场文书
2014年安全员工作总结
2014/11/13 职场文书
长城导游词400字
2015/01/30 职场文书
小学公民道德宣传日活动总结
2015/03/23 职场文书
干部作风纪律整顿心得体会
2016/01/23 职场文书