隐藏div如果出现

时间:2013-04-04 12:10:29

标签: jquery html

我的页面中有一个消息框div,它会在成功提交表单后显示。我想在一段时间后隐藏它。

我在chrome开发人员工具中尝试过这个代码,但它确实有效。

$(document).ready(function(){
   if ($('#notification').is(":visible")) {
       $('#notification').delay(1000).fadeOut();
   }
});

但是当我将此代码插入到我的页面时,它无法正常工作。

请给我一个解决方案。

谢谢你&的问候,

3 个答案:

答案 0 :(得分:5)

您正在dom-ready函数中运行此代码:$(document).ready(function(){ ...

这意味着代码将在页面加载完成后运行一次,此时通知可能不可见,因此代码会继续运行,并且不会再次运行。

您需要绑定此功能,以便在每次提交表单时使用jQuery's .submit() method运行

答案 1 :(得分:0)

$('#myForm').submit(function() {
    $('#notification').fadeIn().delay(3000).fadeOut();
});

答案 2 :(得分:0)

您可以使用 setTimeout 电话:

setTimeout( function() {
    if ($('#notification').is(":visible")) {
       $('#notification').delay(1000).fadeOut();
   }
}, 3000);