返回顶部组件是一种极其常见的网页功能,需求简单:页面滚动一定距离后,显示返回顶部的按钮,点击该按钮可以将滚动条滚回至页面开始的位置。
实现思路也很容易,只要改变document.documentElement.scrollTop或document.body.scrollTop的值即可。
本文抛弃所有加速减速的酷炫效果,回归软件的本质,提供一个最简洁的实现,只追求实用性,不追求所谓的用户体验,效果如下
由于思路跟代码都很简单,所以就直接贴出实现细节了:
调用方式:
之所以写这篇博客,弄这么个简单的东西,有两个方面的原因:
1)这段时间一直在手写一些常见的简单组件,这算是一个简单中更简单的一个,为了让这系列的博客更加完整,所以把这个组件补充了进来;
2)我想表达自己在工作过程中的一个观点:就是不要过渡用用户体验来装饰你的软件或者说产品,用户体验这个东西说白了就是两个词,一个是好印象,第二个就是好玩,但这并不是产品开发运营的最终目的,你把东西做的再漂亮,产品的核心价值和服务做的不够的话,就算把返回顶部这种功能做成超级无敌的火箭也是徒劳无功的。做前端开发,得锻炼点控制产品经理瞎提用户体验功能的度,以这个组件来说,我认为做加速或减速效果都是多余的,既增加开发时间,又耽误用户使用的时间,抛弃自己心中那点对技术玩弄的固执,可以让自己的工作做的更加完美。
下面给大家分享几种常用网页返回顶部代码
一、使用HTML的锚标记最简单了
放置位置在
标签之后随便找个地方放都可以,只要靠近顶部即可。页面底部放置:
二、使用Javascript Scroll函数返回顶部
scrooll函数用来控制滚动条的位置,有两种很简单的实现方式:
方式1(推荐:简单方便):
scroll第一个参数是水平位置,第二个参数是垂直位置,比如要想定位在垂直50像素处,改成scroll(0,50)就可以了。
方式2(注重效果:缓慢向上):
本方式是渐进式返回顶部,要好看一些,代码如下:
这样就会动态返回顶部,不过虽然返回到顶部但是代码仍在运行,还需要在pageScroll函数加一句给停止掉。