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 相关文章推荐
Mootools 1.2 手风琴(Accordion)教程
Sep 15 Javascript
JS trim去空格的最佳实践
Oct 30 Javascript
JavaScript异步编程:异步数据收集的具体方法
Aug 19 Javascript
js中匿名函数的创建与调用方法分析
Dec 19 Javascript
JS实现跟随鼠标闪烁转动色块的方法
Feb 26 Javascript
简介JavaScript中的italics()方法的使用
Jun 08 Javascript
js实现的xml对象转json功能示例
Dec 24 Javascript
three.js绘制地球、飞机与轨迹的效果示例
Feb 28 Javascript
angular+webpack2实战例子
May 23 Javascript
WebSocket的通信过程与实现方法详解
Apr 29 Javascript
angularjs通过过滤器返回超链接的方法
Oct 26 Javascript
es6中使用map简化复杂条件判断操作实例详解
Feb 19 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
php根据某字段对多维数组进行排序的方法
2015/03/07 PHP
PHP实现自动对图片进行滚动显示的方法
2015/03/12 PHP
详解PHP编码转换函数应用技巧
2016/10/22 PHP
Windows下php+mysql5.7配置教程
2017/05/16 PHP
PHP使用PDO访问oracle数据库的步骤详解
2017/09/29 PHP
PHP多维数组排序array详解
2017/11/21 PHP
TP5(thinkPHP5)框架基于ajax与后台数据交互操作简单示例
2018/09/03 PHP
Javascript注入技巧
2007/06/22 Javascript
js读取被点击次数的简单实例(从数据库中读取)
2014/03/07 Javascript
js函数模拟显示桌面.scf程序示例
2014/04/20 Javascript
js图片预加载示例
2014/04/30 Javascript
JavaScript利用正则表达式去除日期中的-
2014/06/09 Javascript
jquery中checkbox全选失效的解决方法
2014/12/26 Javascript
javascript数组排序汇总
2015/07/07 Javascript
基于javascript实现浏览器滚动条快到底部时自动加载数据
2015/11/30 Javascript
JS实现左右无缝轮播图代码
2016/05/01 Javascript
React通过redux-persist持久化数据存储的方法示例
2019/02/14 Javascript
vue proxy 的优势与使用场景实现
2020/06/15 Javascript
如何配置vue.config.js 处理static文件夹下的静态文件
2020/06/19 Javascript
[01:21]DOTA2新纪元-7.0新版本即将开启!
2016/12/11 DOTA
[00:38]TI珍贵瞬间系列(二):笑
2020/08/26 DOTA
Python排序算法之选择排序定义与用法示例
2018/04/29 Python
python读取几个G的csv文件方法
2019/01/07 Python
django 单表操作实例详解
2019/07/30 Python
如何基于Python和Flask编写Prometheus监控
2020/11/25 Python
英国最大的运动营养公司之一:LA Muscle
2018/07/02 全球购物
英国大码女性时装零售商:Evans
2018/08/29 全球购物
Converse匡威法国官网:美国著名帆布鞋品牌
2018/12/05 全球购物
小学运动会演讲稿
2014/08/25 职场文书
2014年话务员工作总结
2014/11/19 职场文书
2014年房产销售工作总结
2014/12/08 职场文书
市场总监岗位职责
2015/02/11 职场文书
七年级作文之我的梦想
2019/10/16 职场文书
SpringAop日志找不到方法的处理
2021/06/21 Java/Android
sqlserver连接错误之SQL评估期已过的问题解决
2022/03/23 SQL Server
Golang获取List列表元素的四种方式
2022/04/20 Golang