if条件判断超出浏览器高度100的时候没有自动执行opacity:0,手动刷新浏览器才能把导航栏透明度设为0.这个问题怎么解决?
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
*{
padding:0;
margin:0;
}
body{
height:9999px;
}
#header{
position: fixed;
background: #000;
width:100%;
height:100px;
color:#fff;
-webkit-transition: background .15s ease-in-out;
-moz-transition: background .15s ease-in-out;
-o-transition: background .15s ease-in-out;
transition: background .15s ease-in-out;
}
</style>
</head>
<body>
<header id="header">
dddd
</header>
<script>
window.onload = function(){
var header = document.getElementById("header");
var iDocHeight = document.body.scrollTop;
var height = 100;
if(iDocHeight > height){
header.style.opacity = '0';
}else{
header.style.opacity = '1';
}
}
</script>
</body>
</html>
window.onload的时候document.body.scrollTop为0, 你这块代码应该写在滚动事件监听器里。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。