Javascript 两个jQuery效果之间的冲突

Javascript 两个jQuery效果之间的冲突,javascript,jquery,conflict,fadeout,Javascript,Jquery,Conflict,Fadeout,我有一个“弹出窗口”,当我网站上的某个用户登录/注销或提交包含错误的表单时会显示 使用jQuery,我会以5秒的延迟“淡出”它。在弹出窗口的右上角还有一个小十字架,它链接到点击事件,这也会触发淡出效果,但不会有任何延迟 我的问题是,我似乎不能使这两个工作在一起,但分开这些工作很好 请帮帮我,谢谢 代码如下: $().ready(function() { $( ".msg_alerte" ).delay(5000).fadeOut(); $('#msg_alerte_cross'

我有一个“弹出窗口”,当我网站上的某个用户登录/注销或提交包含错误的表单时会显示

使用jQuery,我会以5秒的延迟“淡出”它。在弹出窗口的右上角还有一个小十字架,它链接到点击事件,这也会触发淡出效果,但不会有任何延迟

我的问题是,我似乎不能使这两个工作在一起,但分开这些工作很好

请帮帮我,谢谢

代码如下:

$().ready(function() {
    $( ".msg_alerte" ).delay(5000).fadeOut();

    $('#msg_alerte_cross').click(function() {
       $( ".msg_alerte" ).fadeOut();
    });
});
这是我的“弹出窗口”,实际上是一个简单的div

<div class="msg_alerte">
    <i>Successful login</i>
    <img id="msg_alerte_cross" src="../images/close-cross.png" />
</div>

成功登录

当然,您可以在每次淡出之前添加stop()

$( ".msg_alerte" ).delay(5000).stop().fadeOut();
$( ".msg_alerte" ).stop().fadeOut();
但我宁愿使用jquery:animate pseudoselector(); 当自动淡出开始时,不需要触发通过单击隐藏它

$( ".msg_alerte" ).delay(5000).fadeOut();

$('#msg_alerte_cross').click(function() {
   $( ".msg_alerte").not(':animated').fadeOut();
});

谢谢你的帮助。因此,我尝试了两种方法,但都无法解决问题,但使用.stop()方法,我只在单击事件1上保留它,效果很好。我不知道为什么,我是jQuery的新手。。。现在,用户可以让警报逐渐消失,如果它困扰着他,也可以自己关闭警报。