【问题标题】:Nav bar reappears after calling .remove()调用 .remove() 后导航栏重新出现
【发布时间】:2014-01-16 21:47:02
【问题描述】:

当我使用 .click 调用 .remove() 函数时,导航栏和按钮会消失,但几秒钟后又会重新出现。尽管从控制台运行 remove() 函数会删除导航栏并且它不会重新出现。在我单击按钮调用删除后,网络选项卡立即显示来自发起程序 turbolinks.js?body=1:59 的 200 状态。

$('#slide_up_btn').click(function() {
      $('#dispatch_nav').remove();
      $(this).slideUp();
});

<%= link_to '<i class="fa fa-arrow-up"></i>'.html_safe, "#", class: "btn btn-mini", id: "slide_up_btn" %>

<div class="navbar navbar-fixed-top uv" id="dispatch_nav"> ... </div>

对原因或解决方案的任何帮助将不胜感激!

【问题讨论】:

  • 页面没有重新加载吗?
  • 我认为@A.Wolff 是正确的。状态 200 表示页面已重新加载

标签: javascript jquery ruby-on-rails twitter-bootstrap


【解决方案1】:
$('#slide_up_btn').click(function(e) {
      e.preventDefault(); // prevent the default action
      $('#dispatch_nav').remove();
      $(this).slideUp();
});

这样做是因为#slide_up_btn 是一个锚标记

【讨论】:

  • 非常感谢!完美运行
【解决方案2】:

改用$('#dispatch_nav').hide();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-09-14
    • 1970-01-01
    • 1970-01-01
    • 2016-02-19
    • 1970-01-01
    相关资源
    最近更新 更多