#javascript #jquery #css #navbar
#javascript #jquery #css #панель навигации
Вопрос:
У меня есть панель навигации, которая в настоящее время прилипает к верхней части экрана, когда я прокручиваю страницу до конца. В идеале я хочу, чтобы она отклеивалась после достижения нижней части элемента canvas, который образует верхнюю половину страницы, а затем возвращалась со страницей, если она прокручивается обратно.
Я попробовал пару поисковых запросов и думаю, что, вероятно, смогу сделать это с помощью jQuery, но я довольно новичок в этом и не уверен, с чего начать. Любая помощь приветствуется!
HTML
<nav class="navbar navbar-expand-md navbar-dark fixed-top">
<div class="container-fluid">
<a class="navbar-brand abs" href="#">Donald Barr</a>
<button class="navbar-toggler ms-auto" type="button" data-bs-toggle="collapse" data-bs-target="#collapseNavbar">
<span class="navbar-toggler-icon"></span>
</button>
<div class="navbar-collapse collapse" id="collapseNavbar">
<ul class="navbar-nav">
<li class="nav-item active">
<a class="nav-link" href="https://github.com/db1692"> <img class="logos" src="imagesGitHub-Mark-64px.png" alt=""> </a>
</li>
</ul>
<ul class="navbar-nav ms-auto">
<li class="nav-item">
<a class="nav-link" href="mailto: x" data-bs-target="#myModal" data-bs-toggle="modal"><img class="logos" src="imagesemail.png" alt=""></a>
</li>
</ul>
</div>
</div>
</nav>
<body>
<canvas id="canvas"></canvas>
<div class="splash-wrapper"> **This is where I want the navbar to stop**
<div class="splash-content">
<img class="headshot faded" src="imagesNYC-Pic.jpg" alt="" />
</div>
<div class="splash-text">
<h1 class="faded"></h1>
</div>
<div class="splash-text">
<p class="faded">Filler text here</p>
</div>
.navbar {
background: rgba(0, 0, 0, 0.4);
font-family: 'Merriweather', serif;
font-size: 2rem;
top: 0;
width: 100%;
height: 50px;
margin: auto;
text-align: center;
}
.navbar-brand {
font-size: 1em;
padding-right: 13px;
}
@media (min-width: 768px) {
.navbar-brand.abs {
position: absolute;
width: auto;
left: 50%;
transform: translateX(-50%);
text-align: center;
}
}
.logos {
max-width: 35px;
}
Ответ №1:
Вы можете использовать обработчики событий onscroll для проверки положения прокрутки и отклеивания панели навигации, когда это необходимо.
https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onscroll
Комментарии:
1. Спасибо! Я попробую это сегодня