15

現在、成功/失敗などのdevise gemを使用した標準のフラッシュメッセージがあります。クローズクラスを介して、いくつかのブートストラップ機能を使用してメッセージを手動で閉じるオプションを追加しました。小さなスニペットを以下に示します。

{ 
  <a class="close" data-dismiss="alert">&#215;</a>
  <%= content_tag :div, msg, :id => "flash_#{name}" %>
}

アラート メッセージが 5 秒後に閉じるタイムアウト期間を作成するオプションが必要でした。Railsでこれを行う簡単な方法があるかどうかはわかりません。

ありがとう

4

3 に答える 3

32

同じページにjQueryをロードした場合、これはうまくいきます

<div id="flash">
  <a class="close" data-dismiss="alert">&#215;</a>
  <%= content_tag :div, msg, :id => "flash_#{name}" %>
</div>

<script type="text/javascript">
$(document).ready(function(){
  setTimeout(function(){
    $('#flash').remove();
  }, 5000);
 })
</script>
于 2013-03-22T18:44:08.490 に答える
0
  1. div にalertクラスがあることを確認してください。
  2. application.jsまたは他の.jsファイルに次のコードを追加します。
$(document).on('turbolinks:load', function() {
  setTimeout(function() {
    $('.alert').fadeOut();
  }, 3000);
})

  1. それが消えるのを見てください。
于 2020-04-29T21:56:56.747 に答える