jQuery - 覆盖delay() 动作?

发布于 2024-10-30 09:29:57 字数 355 浏览 2 评论 0原文

我有一个与页面重叠的错误消息的代码。我刚刚添加了点击侦听器 - 我希望它能够跳过延迟并在被点击时立即关闭。然而,什么也没有发生。如果我在点击监听器中使用 .hide() ,它就会起作用。但我想顺利过渡。

有什么想法吗?

// Flash messages effect
$("#FlashMessage").slideDown('250').delay(3000).slideUp('250');

// Hide flash message when clicked
$("#FlashMessage").click(function(){
    $("#FlashMessage").slideUp('250');
});

I have this code for an error message that overlaps the page. I just added the click listener - I want it to skip the delay and close right away if it's clicked. However, nothing happens. If I use .hide() in the click listener, it works. But I want to transition it out smoothly.

Any ideas?

// Flash messages effect
$("#FlashMessage").slideDown('250').delay(3000).slideUp('250');

// Hide flash message when clicked
$("#FlashMessage").click(function(){
    $("#FlashMessage").slideUp('250');
});

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

慕巷 2024-11-06 09:29:57

如果#FlashMessage是一个实际的Flash对象,它可能会抓取输入并且不会按预期发出事件。

我可能是错的,但可能的解决方案可能是使用 .focus() 而不是 .click()`

尝试使用图像而不是 Flash,并用它进行测试,如果它有效。我是对的,闪电否认了这一事件。

If #FlashMessage is an actual Flash Object, it might be grabbing input and not issuing the event as expected.

I might be wrong though, but a possible solution might be to use .focus() instead of .click()`

Try having a image not a flash, and test with that, if it works. I'm right and the flash is denying the event.

柠檬色的秋千 2024-11-06 09:29:57

jquery.delay 无法跳过。使用js超时方法

$("#FlashMessage").slideDown('250');
window.setTimeout( function(){ $("#FlashMessage").slideUp('250'); },3000);

// Hide flash message when clicked
$("#FlashMessage").click(function(){
    $("#FlashMessage").slideUp('250');
});

http://www.w3schools.com/js/js_timing.asp

jquery.delay is not possible to skip. Use js timeout methods instead

$("#FlashMessage").slideDown('250');
window.setTimeout( function(){ $("#FlashMessage").slideUp('250'); },3000);

// Hide flash message when clicked
$("#FlashMessage").click(function(){
    $("#FlashMessage").slideUp('250');
});

http://www.w3schools.com/js/js_timing.asp

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文