Auto Dismiss Bootstrap Alert在Rails中停止工作

时间:2014-12-24 16:06:58

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

我使用以下代码在Ruby on Rails应用程序中自动关闭成功警报:

$ ->
  flashCallback = ->
    $(".alert-success").fadeOut()
  $(".alert-success").bind 'click', (ev) =>
    $(".alert-success").fadeOut()
  setTimeout flashCallback, 3000

使用相关警戒线:

<div class="alert alert-<%= name.to_s == "notice" ? "success" : "danger" %> alert-dismissable">

一切都很好,但似乎已经在某个地方破了。

我的所有代码都可以在这里找到:https://github.com/vroomanj/updemo

有没有更好的方法来完成我想要完成的任务?有没有人看到我正在做的事可能导致它停止工作有什么问题?我希望我可以说它什么时候停止工作但我刚刚注意到了。

1 个答案:

答案 0 :(得分:0)

使用Noty http://ned.im/noty/#/about

这是我用它的方式

将此代码添加到application.js.coffee

window.show_notification = (text, type)->
  n = noty({
    layout: 'topRight'
    text: text
    type: type
    theme: 'relax'
    animation:
      open: "animated bounceInRight"
      close: "animated fadeOut"
  })
  setTimeout (->
      n.close()
    ), 5000

我的Flash信息部分采用纤薄格式

javascript:
  if(#{flash[:notice].present?}){
    show_notification("<span class= 'fa fa-check-circle'></span> #{flash[:notice]}", 'success')
  }

  if(#{flash[:alert].present?}){
    show_notification("<span class= 'fa fa-exclamation-circle '></span> #{flash[:alert]}", 'error')
  }