jQuery - 覆盖delay() 动作?
我有一个与页面重叠的错误消息的代码。我刚刚添加了点击侦听器 - 我希望它能够跳过延迟并在被点击时立即关闭。然而,什么也没有发生。如果我在点击监听器中使用 .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 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果
#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.
jquery.delay 无法跳过。使用js超时方法
http://www.w3schools.com/js/js_timing.asp
jquery.delay is not possible to skip. Use js timeout methods instead
http://www.w3schools.com/js/js_timing.asp