【问题标题】:How to prevent nav from jumping back to top of page [duplicate]如何防止导航跳回页面顶部[重复]
【发布时间】:2019-08-13 02:46:09
【问题描述】:

在代码中的何处插入event.preventDefault()?当我在页面底部按下#toggle 时,它​​会将我带回顶部

$("#toggle").click(function(){
  if ( $("ul.nav > li").css("display") == "none")  {
    $("ul.nav > li").css("display", "block");
    $(".nav").css("background-color", "#F8C471");
    $("#toggle").css("color", "#fff");
    $(".nav").css("position", "sticky");
  } else {
    $("ul.nav > li").css("display", "none");
    $("#toggle").css("color", "#1B2631");
  }
});

【问题讨论】:

    标签: jquery


    【解决方案1】:

    event.preventDefault() 在这种情况下不起作用。顾名思义,它只会阻止事件的默认功能/行为。您必须调试 #toggle 使用哪个函数导致页面滚动到顶部。替换该函数或将其与该元素分离。

    编辑:如果 #toggle 是 Phil 评论的 <a>,您可以将 event.preventDefault() 放置在提到的任何位置 here

    【讨论】:

    • 我想是<a id="toggle" href="#">Toggle</a> 或类似的东西
    • 如果是<a>,是有意义的。希望雅各布能证实这一点。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-26
    • 1970-01-01
    • 2011-03-16
    • 1970-01-01
    • 2012-05-07
    • 1970-01-01
    相关资源
    最近更新 更多