javascript - 如何使用javascript在html中制作粘性菜单栏

标签 javascript jquery html css

我想在我的 html 网站中制作一个粘性菜单栏。

但不能让它变粘。

html 标记

<header class="header__container" id="myHeader">
     /*navbar html part is here*/
</header>

css 部分

.sticky 
{
    position: fixed;
    top: 0;
    width: 100%;
}

.sticky + .content 
{
    padding-top: 102px;
}

js代码

<script type="text/javascript">
window.onscroll = function() {myFunction()};

var header = document.getElementById("myHeader");
var sticky = header.offsetTop;

function myFunction() {
  if (window.pageYOffset >= sticky)
  {
    header.classList.add("sticky");
  }
  else 
  {
    header.classList.remove("sticky");
  }
}

问题出在哪里找不到

最佳答案

window.onscroll = function() {myFunction()};

var header = document.getElementById("myHeader");
var sticky = header.offsetTop;

function myFunction() {
  if (window.pageYOffset >= sticky)
  {
    header.classList.add("sticky");
  }
  else 
  {
    header.classList.remove("sticky");
  }
}
body {
  height: 9000px;
}

.sticky 
{
    position: fixed;
    top: 0;
    width: 100%;
    background: red;
}

.sticky + .content 
{
    padding-top: 102px;
}
<header class="header__container" id="myHeader">
     <nav class="content">
       <ul>
         <li>1</li>
         <li>2</li>
       </ul>
     </nav>
</header>

解释一下你到底想达到什么目的?

关于javascript - 如何使用javascript在html中制作粘性菜单栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50813541/

相关文章:

javascript - Express的req.params格式是什么?

javascript - 如何使用 WebStorm 在 TypeScript 而不是 JavaScript 中创建 Cucumber 步骤定义文件?

javascript - 将文件路径字符串解析为json对象

Javascript:重新缩放时保持元素在父 div 中的位置

javascript - 如何在 ionic 中的特定页面实现移相器游戏

javascript - 使容器在消失后出现并带有按钮

javascript - react-router transitionTo(routeNameOrPath, [params[, query]]) 从 URL 隐藏查询

javascript - 动态循环 Pug 变量

jquery - 仅当页面为 "short"时才将页脚放在底部

html - div 的背景图像不触及页面底部