同时关闭删除按钮,不再显示返回顶部按钮
(同时在后面继续滚动的时候,返回顶部按钮也不再出现,可以使用自定义属性)
效果图:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
.content {
width: 1000px;
height: 3000px;
background-color: pink;
margin: 0 auto;
}
.backtop {
display: none;
width: 50px;
left: 50%;
margin: 0 0 0 505px;
position: fixed;
bottom: 60px;
z-index: 100;
}
.backtop a {
height: 50px;
width: 50px;
background: url(./images/bg2.png) 0 -600px no-repeat;
opacity: 0.35;
overflow: hidden;
display: block;
text-indent: -999em;
cursor: pointer;
}
</style>
</head>
<body>
<div class="content"></div>
<div class="backtop" data-x="0">
<img src="./images/close2.png" alt="">
<a href="javascript:;"></a>
</div>
<script>
// 获取元素
let backtop = document.querySelector('.backtop')
// 1.页面滚动事件
window.addEventListener('scroll', function () {
// 2. 页面检测滚动的距离
// console.log(document.documentElement.scrollTop); //得到页面向上滚动的距离
let num = document.documentElement.scrollTop //存储为一个变量,后面方便进行大小判断
// 3.进行判断显示和隐藏
if (num >= 500 && backtop.dataset.x == 0) {
// 显示元素
backtop.style.display = 'block'
// backtop.style.display = 'block'
} else {
// 隐藏元素
backtop.style.display = 'none'
}
})
backtop.children[0].addEventListener('click', function () {
backtop.style.display = 'none'
backtop.dataset.x = 1
// document.documentElement.scrollTop = this.scrollTop
})
// 点击链接返回顶部 可以使用backtop.children[1]找到backtop里面的第二个孩子
backtop.children[1].addEventListener('click', function () {
// 返回顶部
// scrollTop可读写
document.documentElement.scrollTop = 0
})
</script>
</body>
</html>