首页  >  文章  >  web前端  >  如何在没有 jQuery 的情况下使用 CSS 和 JavaScript 创建粘性标题?

如何在没有 jQuery 的情况下使用 CSS 和 JavaScript 创建粘性标题?

DDD
DDD原创
2024-10-31 11:38:01208浏览

How to Create a Sticky Header with CSS and JavaScript Without jQuery?

修复滚动时的标题

当创建滚动时仍然可见的标题时,可以单独使用 CSS 和 HTML 来实现此行为,而不需要 jQuery。

CSS 和 HTML 解决方案

引入一个粘性标头类:

<code class="css">.sticky-header {
  width: 700px;
  height: 50px;
  background: orange;
  position: fixed;
}</code>

在 HTML 中添加一个带有“粘性”类的 div:

<code class="html"><div class="sticky"></div></code>

用于滚动事件的 JavaScript

为了精确控制标题的固定,滚动事件需要 JavaScript:

<code class="javascript">$(window).scroll(function() {
  var sticky = $('.sticky'),
    scroll = $(window).scrollTop();

  if (scroll >= 100) {
    sticky.addClass('fixed');
  } else {
    sticky.removeClass('fixed');
  }
});</code>

扩展示例

确定注视点根据粘性元素在屏幕上的位置,使用 offset().top:

<code class="javascript">var stickyOffset = $('.sticky').offset().top;

$(window).scroll(function() {
  var scroll = $(window).scrollTop();

  if (scroll >= stickyOffset) {
    sticky.addClass('fixed');
  } else {
    sticky.removeClass('fixed');
  }
});</code>

以上是如何在没有 jQuery 的情况下使用 CSS 和 JavaScript 创建粘性标题?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn