Javascript 导航栏不存在粘性问题';不要像应该的那样滚动

Javascript 导航栏不存在粘性问题';不要像应该的那样滚动,javascript,html,css,Javascript,Html,Css,首先,我想说我对JS是一个全新的人。我试图解决这个问题已经有一段时间了,但我找不到解决办法。我有一个小问题(我希望如此,它是小!)与我的简单粘性导航栏。确切地说,它必须是一个错误,位置:position:fixed我想在导航栏被隐藏并且部分用户将成为apear时实现粘性效果。我将感谢您的解决方案!这是我的一些HTML代码 HTML: 和js window.onscroll = function() {myFunction()}; var navbar = document.getElement

首先,我想说我对JS是一个全新的人。我试图解决这个问题已经有一段时间了,但我找不到解决办法。我有一个小问题(我希望如此,它是小!)与我的简单粘性导航栏。确切地说,它必须是一个错误,位置:
position:fixed我想在导航栏被隐藏并且
部分用户
将成为apear时实现粘性效果。我将感谢您的解决方案!这是我的一些HTML代码

HTML:

和js

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

var navbar = document.getElementById("navbar");
var sticky = navbar.offsetTop;

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

您的导航栏工作正常。你看不到它,因为你的身体没有足够的内容滚动。设置“躯干高度”以查看其工作状态

body{ height:2000px;}

导航栏工作正常。你看不到它,因为你的身体没有足够的内容滚动。设置“躯干高度”以查看其工作状态

body{ height:2000px;}

我解决了这个问题。我只在if语句
sticky&&window.pageYOffset>670
中添加了一个条件,现在解决方案如下所示:

function myFunction() {
    var navbar = document.getElementById("navbar");
    var sticky = navbar.offsetTop;
    console.log(sticky);

       if (window.pageYOffset > sticky && window.pageYOffset> 670) {
            navbar.classList.add("sticky")
            console.log(sticky);
        } else {
            navbar.classList.remove("sticky");
        }
    }

也许它对其他人有用。

我解决了这个问题。我只在if语句
sticky&&window.pageYOffset>670
中添加了一个条件,现在解决方案如下所示:

function myFunction() {
    var navbar = document.getElementById("navbar");
    var sticky = navbar.offsetTop;
    console.log(sticky);

       if (window.pageYOffset > sticky && window.pageYOffset> 670) {
            navbar.classList.add("sticky")
            console.log(sticky);
        } else {
            navbar.classList.remove("sticky");
        }
    }

也许它对其他人有用。

你想做什么?向下滚动时隐藏导航栏?我想在向下滚动到其他部分后将导航栏更改为.sticky。您想做什么?向下滚动时隐藏导航栏?我想在向下滚动到其他部分后将导航栏更改为.sticky。嗨,没有高度设置为auto。我想得到的效果时,节feauters将是apearHi,没有高度设置为自动。我想在节期结束时生效