当前位置:首页 > javascript > 正文内容

JavaScript实现回到顶部

自由小鸟7年前 (2018-06-27)javascript3228
#top{
display: none;
position: fixed;
left: 90%;
bottom: 40px;
height:60px;
width: 60px;
background: rgba(0,0,0,0.5);
background-size:100% auto;
border-radius: 5px;
text-align: center;
}
#top i{
border-width:14px 10px;
border-color:transparent transparent #000 transparent;
border-style: dashed dashed solid dashed;
}
window.onload=function(){
oTop=document.getElementById('top');
var time1=null;
var isTop=null;
oTop.onclick=function(){
//设置定时器
time1=setInterval(function(){
var osTop = document.body.scrollTop||document.documentElement.scrollTop;
//ceil向上取整,floor向下取整
var speed=Math.ceil(osTop/2);
document.body.scrollTop=document.documentElement.scrollTop=osTop-speed;
if(osTop<=0){
clearInterval(time1);
}
isTop=true;
},100);
}
//页面滚动自动触发:
window.onscroll = function(){
//获取页面可视区高度和滚动高度
var osTop = document.body.scrollTop||document.documentElement.scrollTop;
//这两个获取滚动的方法可以兼容多种浏览器
var clientHeight = document.documentElement.clientHeight;
//对回到顶部的隐藏和显示,在css中一开始可以设置为隐藏
if (osTop>clientHeight) {
oTop.style.display = "block"
}
else{
oTop.style.display = "none"
}
if (!isTop) {
clearInterval(time1);
}
isTop = false;
}

}


版权声明:本文由Web学习之路发布,如需转载请注明出处。

本文链接:https://www.webge.net/?id=12

“JavaScript实现回到顶部” 的相关文章

js类型转换

js类型转换

数据类型: 原始类型:        Boolean Null Undefined Number String Symbol     显示类型转换: ...

数组有哪些原生方法

赋值方法:pop 和 push   pop // 删除数组最后一个元素,返回被删除的元素push // 在数组尾部插入1-N个元素,返回操作后数组的lengthshift     //  删除数组第一个元素,返回被删除的元素uns...

正则的规则

正则的两个特点:懒惰:如果没有设置全局g的情况下,只匹配1次,这时候的lastIndex的值是0贪婪:...

数组去重

var a=[1,3,4,5,6,1,3,9,6]; //代码是去重后的 function arrfn(data){ let newObj={}; for(let i=0;i<data.length;i++...

js 宏任务和微任务

js 宏任务和微任务

首先讲粗略说一下宏任务和微任务宏任务:script(整体代码), setTimeout, setInterval微任务包括: Promise, MutationObserver(html5新特性),process.nextTick。 代码从上至下在执行过程,遇到Promise,new Promi...

SSO单点登陆

1、单点登录实现原理1)登录 注意:1)跳转SSO验证登录时,需要使用sendDirect重定向;2)浏览器与SSO之间建立的会话成为全局会话。扩展:a.spring项目如何获取本机的IP地址? 获得仅为ip地址不带端口b.spring项目如何获取项目端口? 2)注销 SSO认证中心有一个全...