这个效果是点击某个元素 滚回到顶部 要求这个元素要超过可视区域的窗口高度 不然会隐藏
`
window.onload = function () {
// =============
// 电梯导航
// =============
// 获取窗口可视区域
var nClientHeight = document.documentElement.clientHeight
// 获取电梯导航元素
var nElevatorBtn = document.getElementById('isFx');
// 设置一个布尔值 判断是否到达顶部
var isTop = true
// 设置一个定时器
var nTimer = null;
// 设置一个布尔值 判断是否到达顶部
// 滚动条滚动事件
window.onscroll = function () {
// 获取滚动条的高度
var nScrollTop = document.documentElement.scrollTop
// 如果滚动条大于页面高度 显示电梯按钮
// if (nScrollTop > nClientHeight) {
// nElevatorBtn.style.display = 'block'
// } else {
// nElevatorBtn.style.display = 'none'
// }
// 现在因为页面高度不够 设置成滚动条有高度就显示
if (nScrollTop) {
nElevatorBtn.style.display = 'block'
} else {
nElevatorBtn.style.display = 'none'
}
// 如果手动滚动滚动条 清除回到顶部事件
if (!isTop) {
clearInterval(nTimer)
}
isTop = false;
}
// 回到顶部事件按钮事件
nElevatorBtn.onclick = function () {
console.log(1111);
nTimer = setInterval(() => {
//获取滚动条的高度
var nScrollTop = document.documentElement.scrollTop
// 缓动上升
var nStep = Math.floor(-nScrollTop / 6)
document.documentElement.scrollTop = nScrollTop + nStep
// 用来阻止滚动事件清除定时器
isTop = true
// 判断到顶部就停止
if (nScrollTop == 0) {
clearInterval(nTimer)
}
}, 30);
}
}`