预览:
源码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>防抖与节流</title>
<style>
body{
height: 2000px;
}
button{
position:fixed;
right: 100px;
bottom: 100px;
display: none;
}
</style>
</head>
<body>
<h1>window.onscroll事件</h1>
<button>回到顶部</button>
<script>
/*
返回顶部效果
1、window.onscoll事件:滚动条滚动事件
2、document.documentElement.scrollTop:页面滚动位置距离顶部距离
3、window.scrollTo(0,0):让页面滚动条返回至顶部
// 利用闭包实现节流算法
function throttle(fn) {
let mark = true;//标记
window.onscroll = function () {
if (mark) {
setTimeout(() => {
console.log("hello world!")
mark = true;
}, 500)
}
mark = false;
}
}
window.onscroll = throttle( () => {
console.log("计数器");
if (document.documentElement.scrollTop > 0){
btn.style.display = "block";
}else {
btn.style.display = "none";
}
} );
</script>
</body>
</html>
``