JS实现一键回顶功能示例代码


Posted in Javascript onOctober 28, 2013

1.基础准备:

scrollTop() 方法返回或设置匹配元素的滚动条的垂直位置。

scroll top offset 指的是滚动条相对于其顶部的偏移。

如果该方法未设置参数,则返回以像素计的相对滚动条顶部的偏移。

语法

$(selector).scrollTop(offset)

2.

toggleClass() 对设置或移除被选元素的一个或多个类进行切换。

例如对设置和移除所有 <p> 元素的 "main" 类进行切换:

$("button").click(function(){ 
$("p").toggleClass("main"); 
});

3.

setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。

setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。

4.

scrollTo() 方法可把内容滚动到指定的坐标。

scrollTo(xpos,ypos)

参数 描述
xpos 必需。要在窗口文档显示区左上角显示的文档的 x 坐标。
ypos 必需。要在窗口文档显示区左上角显示的文档的 y 坐标。

由此的一段实现一键向上的代码如下:

var topbtn = $("#totop"); 想要一键向上的按钮元素 
var lastScroll = 0; 
topbtn.css("display", "none"); window.onscroll = function(){ onscroll貌似为html5的属性 
var top = $(window).scrollTop();初始均为0

if(top > 0){ 
topbtn.css("display", ""); 
} 
if(top == 0){若为起始状态,则不显示向上图标 
topbtn.css("display", "none"); 
} 
}; topbtn.click(function(){ 点击事件 
var scrollTop = 0; 
var curPos = $(window).scrollTop();现在滚动条的位置 
topbtn.addClass("movingtotop"); 运动中显示另外的图片 
var step = Math.abs(scrollTop - curPos) / 200 ; 
var tid = setInterval(function() {不断调用,帧动成画 
topbtn.toggleClass("movingtotop"); 精妙的一段代码,用元素属性的设置和删除交替,使得有动态感闪烁效果 
if (curPos > scrollTop + 14) { 
curPos -= step; 
step = step * 1.05;速度逐步加快 
window.scrollTo(0, curPos); 
} else if (curPos <= scrollTop + 14){直接跳到起始位置 
window.scrollTo(0, scrollTop); 
topbtn.removeClass("movingtotop"); 
clearInterval(tid); 关闭循环 
} 
}, 0.01); 
});
Javascript 相关文章推荐
jquery实现类似淘宝星星评分功能有截图
Sep 15 Javascript
整理Javascript基础语法学习笔记
Nov 29 Javascript
jQuery实现进度条效果代码
Dec 17 Javascript
jQuery实现边框动态效果的实例代码
Sep 23 Javascript
炫酷的js手风琴效果
Oct 13 Javascript
浅析vue深复制
Jan 29 Javascript
详解angular2如何手动点击特定元素上的点击事件
Oct 16 Javascript
使用nvm和nrm优化node.js工作流的方法
Jan 17 Javascript
Bootstarp在pycharm中的安装及简单的使用方法
Apr 19 Javascript
解决微信浏览器缓存站点入口文件(IIS部署Vue项目)
Jun 17 Javascript
JS中的模糊查询功能
Dec 08 Javascript
简单了解Vue + ElementUI后台管理模板
Apr 07 Javascript
简单的js表单验证函数
Oct 28 #Javascript
自己写的Javascript计算时间差函数
Oct 28 #Javascript
Textarea根据内容自适应高度
Oct 28 #Javascript
将json当数据库一样操作的javascript lib
Oct 28 #Javascript
一个JavaScript变量声明的知识点
Oct 28 #Javascript
Javascript实现页面跳转的几种方式分享
Oct 26 #Javascript
javascript中简单的进制转换代码实例
Oct 26 #Javascript
You might like
收音机指标测试方法及仪器
2021/03/01 无线电
在PHP3中实现SESSION的功能(二)
2006/10/09 PHP
php实现给图片加灰色半透明效果的方法
2014/10/20 PHP
IIS下PHP的三种配置方式对比
2014/11/20 PHP
php微信浏览器分享设置以及回调详解
2016/08/01 PHP
ecshop适应在PHP7的修改方法解决报错的实现
2016/11/01 PHP
php+redis实现注册、删除、编辑、分页、登录、关注等功能示例
2017/02/15 PHP
php 替换文章中的图片路径,下载图片到本地服务器的方法
2018/02/06 PHP
thinkphp5框架调用其它控制器方法 实现自定义跳转界面功能示例
2019/07/03 PHP
零基础php编程好学吗
2019/10/11 PHP
Javascript无阻塞加载具体方式
2013/06/28 Javascript
js分页代码分享
2014/04/28 Javascript
js打开windows上的可执行文件示例
2014/05/27 Javascript
JS获取鼠标位置距浏览器窗口距离的方法示例
2017/04/11 Javascript
详解angularjs获取元素以及angular.element()用法
2017/07/25 Javascript
Angular浏览器插件Batarang介绍及使用
2018/02/07 Javascript
利用Decorator如何控制Koa路由详解
2018/06/26 Javascript
详解ECMAScript typeof用法
2018/07/25 Javascript
微信小程序整合使用富文本编辑器的方法详解
2019/04/25 Javascript
layui点击按钮页面会自动刷新的解决方案
2019/10/25 Javascript
[57:18]DOTA2上海特级锦标赛主赛事日 - 1 败者组第一轮#3VP VS VG
2016/03/03 DOTA
跟老齐学Python之玩转字符串(2)更新篇
2014/09/28 Python
新手常见6种的python报错及解决方法
2018/03/09 Python
python matlibplot绘制3D图形
2018/07/02 Python
深入浅析Python 中 is 语法带来的误解
2019/05/07 Python
纯CSS3实现漂亮的input输入框动画样式库(Text input love)
2018/12/29 HTML / CSS
HTML5 canvas基本绘图之绘制阴影效果
2016/06/27 HTML / CSS
温泉秘密:Onsen Secret
2020/07/06 全球购物
2014的自我评价
2014/01/13 职场文书
平民服装店创业计划书
2014/01/17 职场文书
尽职尽责村干部自我鉴定
2014/01/23 职场文书
学校领导班子四风问题整改意见
2014/10/02 职场文书
思想工作总结范文
2015/08/12 职场文书
2016三八妇女节校园广播稿
2015/12/17 职场文书
PHP使用非对称加密算法RSA
2021/04/21 PHP
Python实现查询剪贴板自动匹配信息的思路详解
2021/07/09 Python