【问题标题】:Scrolling Div bug滚动 div 错误
【发布时间】:2018-05-05 15:31:45
【问题描述】:

我有一个滚动 div 的错误,因为它给我添加了一个空格,我不知道如何消除它

<script type='text/javascript'>
$(window).scroll(function() {
    var nav = $(".menu");
    var top = 200;
    if ($(window).scrollTop() >= top) {

        nav.addClass("-fixo menunu");

    } else {
        nav.removeClass("-fixo menunu");
    }
});
</script>

问题是 div 从 &lt;div class="menu"&gt; 更改为 &lt;div class="menu -fixo menunu"&gt; 并且它必须没有空格,例如 &lt;div class="menu-fixo menunu"&gt;。有什么建议吗?

【问题讨论】:

    标签: javascript jquery wordpress scroll menu


    【解决方案1】:

    您不能仅添加/删除带有addClassremoveClass 的类的后缀。

    首先,删除.menu并添加menu-fixo menunu

    删除var nav,因为它只会在.menu 而不是.menu-fixo 时获取菜单元素。

    var top = 200;
    if ($(window).scrollTop() >= top) {
      $(".menu").removeClass("menu").addClass("menu-fixo menunu");
    } else {
      $(".menu-fixo").removeClass("menu-fixo menunu").addClass("menu")
    }
    

    【讨论】:

    • 它可以工作,但是当我回到顶部时,它仍然是 menu-fixo menunu。我能做什么?
    • 删除var nav,因为当它是.menu而不是.menu-fixo时,它只会得到菜单元素。
    【解决方案2】:

    addClass 和 removeClass 将添加/删除单个类,而不是对类属性字符串中的所有类进行操作。

    试试这个

    if ($(window).scrollTop() >= top) {
        nav.removeClass("menu");
        nav.addClass("menu-fixo menunu");
    } else {
        nav.addClass("menu");
        nav.removeClass("menu-fixo menunu");
    }
    

    【讨论】:

    • 它可以工作,但是当我回到顶部时,它仍然是 menu-fixo menunu。我能做什么?
    猜你喜欢
    • 1970-01-01
    • 2021-12-24
    • 2011-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多