jquery显示div并在5秒后隐藏

时间:2014-07-24 18:02:46

标签: jquery hide show messagebox

我有ajax调用删除帖子
成功删除我得到1
当我得到1然后我想显示通知div
div就像这样

<div style="
 display:inline-block;
 float:right;
 border:1px solid #060;
 background:#FFC;
 padding:10px 20px;
 box-shadow:2px 2px 4px #666;
 color:#060;
 font-weight:bold;
 display:none;
 " id="messageBox">
  post deleted successfully.
</div>

我的Jquery代码就像这样

$("#messageBox").hide().slideDown();
  setTimeout(function(){
      $("#messageBox").hide();        
  }, 3000);

当我删除帖子时,它通常显示messageBox div并在3秒后隐藏它 但是当我删除一个帖子并再次删除另一个帖子时 第一个通知现在尚未隐藏,

$("#messageBox").hide().slideDown();

被调用,因此它隐藏了第一条消息并显示第二条消息

但它很快就隐藏了,我认为第1条消息完成3秒

2 个答案:

答案 0 :(得分:3)

尝试

var tId;

$("#messageBox").hide().slideDown();
clearTimeout(tId);
tId=setTimeout(function(){
  $("#messageBox").hide();        
}, 3000);

答案 1 :(得分:0)

$("#messageBox").hide().slideDown().delay(3000).fadeOut();