如何在jquery中删除带有淡出和延迟函数的div的存在

时间:2013-06-08 09:06:53

标签: jquery delay fadeout

我有一个情况,我有一个共同的成功消息div在页面顶部。它具有以下功能:

function showSuccessMessage(messageType) {
                var messageParam = 'success-message.' + messageType;
                var successMessage = messageParam;
                // Show the success message
                $('.success-message').text(successMessage).hide().fadeIn().delay(5000).fadeOut(5000);
            };

如果用户成功提交,然后在5秒内,他能够再次调用上述方法的另一个提交,之前带有消息的数据逐渐消失,在完成之后,第二个提醒,所以看起来很亲切不切实际和奇怪的。

我需要停止淡入淡出并清除div数据并显示最新数据并覆盖上一条消息。

提前致谢。

1 个答案:

答案 0 :(得分:3)

您可以使用stop(),例如:

 $('.success-message').stop(true,true).hide().text(successMessage).fadeIn().delay(5000).fadeOut(5000);

请参阅working demo