Reputation: 5325
I added bootstrap 4 and I created the navbar, it is working good, but i have some conflict I tried to change when the scroll down change the navbar logo, but its not working correctly, anyone know how to fix that issue.
This is my code:
$(function () {
$(window).scroll(function () {
if ($(this).scrollTop() > 1000) {
$('.navbar .navbar-brand img').attr('src','https://via.placeholder.com/150/FF00FF/808080?Text=newLogo');
}
if ($(this).scrollTop() < 1000) {
$('.navbar .navbar-brand img').attr('src','https://via.placeholder.com/150/0000FF/808080?Text=oldLogo');
}
})
});
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>
<header class="main_menu home_menu">
<div class="container">
<div class="row align-items-center">
<div class="col-lg-12">
<nav class="navbar navbar-expand-lg navbar-light">
<a class="navbar-brand" > <img src="https://via.placeholder.com/150/0000FF/808080?Text=oldLogo" style="width:50px;"> </a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button></nav>
</div></div></div></header>
<section>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div> <div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div> <div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
</section>
Upvotes: 0
Views: 927
Reputation: 1571
Check out below fiddle. It is working fine. It is just that your image is getting hidden under scroll otherwise your image is getting changed.
Please note, for illustration purposes, I have fixed your navbar
header.
Just use navbar navbar-expand-lg navbar-light fixed-top
classes for your navbar and it should work as expected.
$(function () {
$(window).scroll(function () {
if ($(this).scrollTop() > 1000) {
$('.navbar .navbar-brand img').attr('src','https://via.placeholder.com/150/FF00FF/808080?Text=newLogo');
}
if ($(this).scrollTop() < 1000) {
$('.navbar .navbar-brand img').attr('src','https://via.placeholder.com/150/0000FF/808080?Text=oldLogo');
}
})
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>
<header class="main_menu home_menu">
<div class="container">
<div class="row align-items-center">
<div class="col-lg-12">
<nav class="navbar navbar-expand-lg navbar-light fixed-top">
<a class="navbar-brand" > <img src="https://via.placeholder.com/150/0000FF/808080?Text=oldLogo" style="width:50px;"> </a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button></nav>
</div></div></div></header>
<section>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
<div>Placeholder</div>
</section>
Upvotes: 1