javascript - bootstrap 4 - 导航栏品牌标志在向下滚动时不会改变
问题描述
我添加了引导程序 4 并创建了导航栏,它运行良好,但是当向下滚动更改导航栏徽标时,我尝试更改一些冲突,但它无法正常工作,任何人都知道如何解决该问题。
这是我的代码:
$(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>
解决方案
看看下面的小提琴。它工作正常。只是您的图像被隐藏在滚动下,否则您的图像正在改变。
请注意,出于说明目的,我已修复您的navbar
标题。
只需navbar navbar-expand-lg navbar-light fixed-top
为您的导航栏使用类,它应该可以按预期工作。
$(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>
推荐阅读
- java - 如果表单“方案:/路径”有效,URI 是否有效?
- c++ - 如何将值添加到列表
> - regex - 以所有可能的组合匹配字长为 4 的精确 3 个字符
- python-3.x - 计算每个条目从用户输入中获得的票数,并在最后输出
- c++ - std::is_sorted 和比较器要求是否具有误导性?
- typescript - Typsescript 项目引用,composite 和 allowJS
- firebase - 部署站点并将其关闭后,firebase 未针对 localhost 更改进行更新
- sql - 如何连接不相等条件的表?
- spring-boot - 在 Spring Boot 上重定向
- ruby - 如何计算 CSV 文件中的“是”答案(特定列中具有特定值的行)?