代码
<!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 type="text/css">
* {
margin: 0;
padding: 0;
}
.div500 {
width: 500px;
height: 120px;
margin: 0 auto;
background-color: #409EFF;
}
.main {
width: 100px;
height: 500px;
margin: 0 auto;
background-color: #F56C6C;
}
</style>
</head>
<body>
<div class="main"></div>
<!-- 横条 -->
<div class="div500" id="div1"></div>
<div class="main"></div>
</body>
<script>
let last = 300;
window.onscroll = function() {
// 取出div1
var _div1 = document.getElementById('div1');
// getBoundingClientRect用于获取某个元素相对于视窗的位置集合
var _area = div1.getBoundingClientRect();
// console.log(_area);
// 打印该元素上边距的值
console.log(_area.top)
console.log(last);
if (_area.top > last) {
_div1.style.backgroundColor = '#67C23A';
} else {
_div1.style.backgroundColor = '#409EFF';
}
}
</script>
</html>
效果图