javascript - 为什么我的代码 (jQuery) 没有响应?目标 : Sticky header

标签 javascript jquery html css

我有一个基本的 HTML,我正在创建一个新类(原始滚动),它将在我开始滚动时将固定位置添加到我的菜单。

HTML

<header class=" original">
  <h1>This is a Sticky Nav Demo!</h1>
  <p>MAIN MENU</p>
</header>

<div class="main">
  <h2>Lorem ipsum dolor sit amet</h2>
  <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean fringilla, </p>

CSS

.original {
  height: 100px;
  padding-top: 20px;
  background: #f07057;
}

.original-scrolled {
  position: fixed;
  width: 100%;
  top: 0;
}

jQuery - 这是我正在使用的函数,但它似乎不起作用!

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

    if (scroll >= 90) {
        $(".original").addClass(".original-scrolled");
    } else {
        $(".original").removeClass(".original-scrolled");
    }
});

我是初学者,如果这段代码很乱,我很抱歉!

最佳答案

您添加和删除类的方式是错误的。 这应该有效:

$(window).scroll(function() {    
    var scroll = $(window).scrollTop();
    if (scroll >= 90) {
        console.log("more than 90");
        $(".original").addClass("original-scrolled");
    } else {
        $(".original").removeClass("original-scrolled");
    }
});

您在添加和删除类名称时指定了类选择器。 你应该看看 api here

关于javascript - 为什么我的代码 (jQuery) 没有响应?目标 : Sticky header,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33979908/

相关文章:

javascript - 将 jQuery.html() 的值加在一起?

jquery - 显示 div 并使其在悬停时显示 jQuery html

javascript - 相对于其直接父元素放置绝对定位元素

html - POCO HTMLForm 如何读取名称为 invoice[items][1] 的输入表单元素

javascript - 添加混合 javascript 函数以使内容淡入列内的另一个内容/使它适用于两个单独的列

javascript - 将对象推送到 Node.js 中全局声明的数组中

Javascript - 创建一个正则表达式,获取数组中具有任何 ID 的所有标签

javascript - 如何从 JS 获取 Span 标签中的值

javascript - 使用 Chart.JS 显示单个工具提示?

javascript - 让我的 JavaScript/jQuery 更干净