4

5 秒が経過するまで Bootstrap モーダルの表示を遅らせようとしています。これが私のコードのセクションです。私がMDNで読んだことから書いているようです。モーダルは、しばらくすると表示されません。どんな助けでも大歓迎です。

var timeout;
  function modalAlert(message){
        $("#myModalLabel").text("Hey Look!")
        $('.modal-body').html("<img src='"+message+"'>");
        timeout = window.setTimeout(showModal,5000);

  }
  function showModal(){
    console.log("HERE")
    $("#myModal").modal('show')
  }

Vijay Ramamurthy が解決策を見つけるのを手伝ってくれました。

var timeout;
  function modalAlert(message){
        $("#myModalLabel").text("Hey Look!")
        $('.modal-body').html("<img src='"+message+"'>");
        window.setTimeout(function(){showModal();},5000);

  }
  function showModal(){
    console.log("HERE")
    $("#myModal").modal('show')
  }
4

2 に答える 2

7

"shown" イベント ハンドラーを使用してモーダルにタイムアウトを登録し、それを非表示にします。jQueryプラグインなので、関数を連鎖させることができます。

$("#myModal").modal("show").on("shown", function () {
    window.setTimeout(function () {
        $("#myModal").modal("hide");
    }, 5000);
});
于 2013-06-24T21:42:32.940 に答える