javascript - 如何创建固定标题(不是粘性标题),但内容在 JS 中位于标题后面?

标签 javascript html css

我引用了以下文章以获取粘性标题 https://www.w3schools.com/howto/tryit.asp?filename=tryhow_js_sticky_header

可是我不想

<div class="top-container">
  <h1>Scroll Down</h1>
  <p>Scroll down to see the sticky effect.</p>
</div>

在我的 html 中。

我需要的是,“我的页眉”始终位于顶部,但是当用户滚动内容时,顶部多余的旧内容应该位于“我的页眉”后面。

我在 myHeader div 下添加了 position:fixed,但我认为这不是修复的正确方法。 如果我这样做它确实有效,但对于类似的网页它不起作用。 我想添加位置适用于这种情况,因为这是网页中的示例。

请帮忙。

最佳答案

您可以通过对您使用的引用中的 javascript 代码进行小的调整来实现您想要的。用以下内容替换 html 页面中的 javascript 代码,它将按照您希望的方式工作。

<script>
window.onscroll = function() {myFunction()};

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

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

关于javascript - 如何创建固定标题(不是粘性标题),但内容在 JS 中位于标题后面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49668984/

相关文章:

javascript - 正确使用调用c#函数的引导开关(T4MVC/Entity Framework)

javascript - Iframe 图片默认缩小问题

javascript - 为什么 OneDrive js 选择器有时会出现 null opener

html - 如何制作CSS下拉菜单slidedown

扩展搜索栏中的 Javascript 逻辑

css - 尝试创建一个没有剪辑路径的草率矩形

javascript - JSON ajax 响应输出到屏幕

html - Div CSS背后的模糊

javascript - SlideUp() 和lideDown() 不起作用,但slideToggle() 起作用

php - 在多页上打印大表格