我想在滚动后更改导航栏的颜色
我做了与此类似的代码 滚动后更改导航栏颜色?但它没有
<script>
$(function () {
$(document).scroll(function () {
var $nav = $(".fixed-top");
$nav.toggleClass('scrolled', $(this).scrollTop() > $nav.height());
});
});
</script>
//The HTML
<nav class="navbar navbar-dark navbar-expand-lg fixed-top">
<div class="container">
<a class="navbar-brand my-font" href="#">Site Header</a>
......
</div>
</nav>
//The css
.fixed-top {
background-color:#CC3333;
background-image: none;
background-repeat: no-repeat;
}
.fixed-top.scrolled {
color: #FFFFFF;
transition: background-color 200ms linear;
}
试试这个。您只需要更改 css。
$(function () {
$(document).scroll(function () {
var $nav = $(".fixed-top");
$nav.toggleClass('scrolled', $(this).scrollTop() > $nav.height());
});
});
@import "https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.5/css/bootstrap.min.css";
.fixed-top {
position:fixed;
width:100%;
height:50px;
background-color:#CC3333;
}
.fixed-top.scrolled {
background-color: blue;
transition: background-color 200ms linear;
}
<nav class="navbar navbar-dark navbar-expand-lg fixed-top">
<div class="container">
<a class="navbar-brand my-font" href="#">Site Header</a>
......
</div>
</nav>
<p>
"Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nitione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliqre et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostru
re et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostru
re et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostru
re et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostru
re et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostru
re et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostru
re et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostru
re et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostru
re et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostru
re et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostru
re et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostru
</p>
您需要
在更改background-color
时更改css
因此在添加类时应用background-color
并将位置固定为nav
$(function () {
$(document).scroll(function () {
var $nav = $(".fixed-top");
$nav.toggleClass('scrolled', $(this).scrollTop() > $nav.height());
});
});
body{
margin:0px;
}
.fixed-top {
background-color:#CC3333;
position:fixed;
left:0;
right:0;
}
.fixed-top.scrolled {
background-color: #ffff00;
transition: background-color 200ms linear;
}
.content{
min-height:200vh;
background:#f2f2f2;
padding-top:30px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
<nav class="navbar navbar-dark navbar-expand-lg fixed-top">
<div class="container">
<a class="navbar-brand my-font" href="#">Site Header</a>
......
</div>
</nav>
<div class="content">
hiiiiiiiiiiiiiiiiii
</div>