再次单击时,引导程序警报不起作用

时间:2018-03-12 08:01:17

标签: javascript jquery html bootstrap-4 alert

面对一个非常愚蠢的问题。我在点击按钮时显示警告消息。它在第一次点击时效果很好,但接下来没有点击,

这是我的代码:http://jsfiddle.net/nre6fbm5/

HTML

<body>
  <div class="container">
    <h2>Dismissal Alert Messages</h2>
    <button>Send Message</button>
    <div class="alert alert-danger fade alert-conatiner">
      <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button> Error! Can not proceed.
    </div>

  </div>
</body>

JS

$(document).ready(function() {
  $('button').click(function() {
    $(".alert").delay(1000).addClass("in").fadeOut(4000);
  })
});

提前致谢!

4 个答案:

答案 0 :(得分:3)

一个字符串解决方案:

$(".alert").delay(1000).addClass("in").toggle(true).fadeOut(4000);

修改 它只运行一次的问题是display: none函数添加了fadeout.toggle(true)会在fadeout触发前将display属性设置为阻止。了解更多相关信息:

.toggle()

.fadeOut()

此处的工作代码:http://jsfiddle.net/hxxjgh63/

答案 1 :(得分:1)

希望这个帮助,你必须删除“in”类。

第二件事:style =“display:none”在淡出后自动添加在“.alert”中。将其设置为空

$(document).ready(function() {
  $('button').click(function() {
    $(".alert").delay(1000).addClass("in").fadeOut(4000);
    setTimeout(function(){      
        $(".alert").removeClass("in").css('display','');
    },5500);
  })
});

Your demo

答案 2 :(得分:1)

in上课时间不足以显示alert,因为它设置了display: none,您需要在设置fadeIn时设置fadeOut

$(document).ready(function() {
  $('button').click(function() {
    $(".alert").fadeIn().addClass('in').delay(4000).promise().done(function(){
    $(this).removeClass("in").fadeOut();
    });
  })
});

<强> JSFiddle

答案 3 :(得分:1)

设置<?php $str1 = substr ($resourceID,0,2); if(strcmp($str1, "IN") == 0) { $sql2 = //query 2 } else if(strcmp($str1, "BO") == 0) { $sql2 = //query 3 } else if (strcmp($str1, "CD") == 0) { $sql2 = //query 4 } else if (strcmp($str1, "MG") == 0) { $sql2 = //query 5 } else if (strcmp($str1, "EB") == 0) { $sql2 = //query 6 } else if (strcmp($str1, "FL") == 0) { $sql2 = //query 7 } else if (strcmp($str1, "DC") == 0) { $sql2 = //query 8 } else{ die ("There is no such item!"); } if (!mysqli_query($conn,$sql2)) { printf("Error: %s\n", mysqli_error($conn));} while($row2 = mysqli_fetch_array($result2,MYSQL_ASSOC)){ $LineDataDetails = $row2; } header("Content-Type: application/json; charset=UTF-8"); $LineDataDetails = json_encode($LineDataDetails); echo $LineDataDetails;?>

后,您还可以在fadeOut效果上传回回调
  

.fadeOut( [duration ] [, complete ] )

duration

JS Fiddle demo