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 相关文章推荐
JS中图片缓冲loading技术的实例代码
Aug 29 Javascript
JavaScript实现生成GUID(全局统一标识符)
Sep 05 Javascript
javascript中定义类的方法汇总
Dec 28 Javascript
JavaScript转换二进制编码为ASCII码的方法
Apr 16 Javascript
JQuery插入DOM节点的方法
Jun 11 Javascript
javascript数据结构之双链表插入排序实例详解
Nov 25 Javascript
AngularJS基础 ng-hide 指令用法及示例代码
Aug 01 Javascript
第一次接触神奇的Bootstrap导航条
Aug 09 Javascript
jquery submit()不能提交表单的解决方法
Apr 24 jQuery
jQuery插件DataTables分页开发心得体会
Aug 22 jQuery
详解Bootstrap 学习(一)入门
Apr 12 Javascript
JavaScript实现省份城市的三级联动
Feb 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/10/09 PHP
PHP session有效期session.gc_maxlifetime
2011/04/20 PHP
利用PHP实现短域名互转
2013/07/05 PHP
PHP英文字母大小写转换函数小结
2014/05/03 PHP
ThinkPHP单字母函数(快捷方法)使用总结
2014/07/23 PHP
PHP基于imagick扩展实现合成图片的两种方法【附imagick扩展下载】
2017/11/14 PHP
PHP编程实现的TCP服务端和客户端功能示例
2018/04/13 PHP
js 加载时自动调整图片大小
2008/05/28 Javascript
javascript字符串拼接的效率问题
2010/12/25 Javascript
尝试在让script的type属性等于text/html
2013/01/15 Javascript
JavaScript插件化开发教程(五)
2015/02/01 Javascript
js实现简单的省市县三级联动效果实例
2016/02/18 Javascript
angular.js之路由的选择方法
2016/09/24 Javascript
懒加载实现的分页&amp;&amp;网站footer自适应
2016/12/21 Javascript
jQuery实现联动下拉列表查询框
2017/01/04 Javascript
详解使用React进行组件库开发
2018/02/06 Javascript
jQuery实现文字超过1行、2行或规定的行数时自动加省略号的方法
2018/03/28 jQuery
Mac下通过brew安装指定版本的nodejs教程
2018/05/17 NodeJs
详解vue中移动端自适应方案
2019/05/05 Javascript
javascript实现切割轮播效果
2019/11/28 Javascript
[01:44]Ti10举办地公布
2019/08/25 DOTA
一个小示例告诉你Python语言的优雅之处
2014/07/04 Python
python魔法方法-属性转换和类的表示详解
2016/07/22 Python
python实现贪吃蛇小游戏
2020/03/21 Python
Python 图像对比度增强的几种方法(小结)
2019/09/25 Python
matplotlib绘制鼠标的十字光标的实现(自定义方式,官方实例)
2021/01/10 Python
HTML5 audio标签使用js进行播放控制实例
2015/04/24 HTML / CSS
浅析HTML5中的 History 模式
2017/06/22 HTML / CSS
捷克原创男装和女装购物网站:Bolf.cz
2018/04/28 全球购物
Hotels.com韩国:海外国内旅行所需的酒店和住宿预订网站
2020/05/08 全球购物
面试后的感谢信范文
2014/02/01 职场文书
广告设计专业毕业生自我鉴定
2014/09/27 职场文书
学生会主席任命书
2015/09/21 职场文书
股东出资协议书
2016/03/21 职场文书
Springboot如何同时装配两个相同类型数据库
2021/11/17 Java/Android
【海涛教你打DOTA】剑圣第一人称视角解说
2022/04/01 DOTA