Jquery停止先前定义的操作

时间:2011-11-04 06:02:16

标签: jquery animation fade

我看了所有这些帖子: jQuery stop fadein during fadeout jQuery stop "click" action after first elevent stop the animation jQ Cancel all queued jQuery slideUp and slideDown animations

还有更多,但我似乎无法在我的网站上运行。

基本上我已经安装了Jquery热键来在我的网站上创建快捷方式。当用户点击热键时,div应该淡入显示用户的快捷方式,然后在一秒钟之后淡出。

我的问题是我似乎无法让它完美而顺利地运作。有关代码,请参阅jsfiddle: http://jsfiddle.net/M7j9Y/2/

(在JS面板中,请向下滚动以跳过热键插件。我的代码就在最后)

如果你快速按下并在“Alt + f”和+ Alt + s之间交替显示,你会发现渐弱效果的表现非常奇怪,有时甚至都不起作用。

所有人都非常感谢,并提前感谢您

1 个答案:

答案 0 :(得分:1)

看起来你出于某种原因拖延了一下。不知道为什么。试试这个

$('#hotkeys_display').html(text).fadeTo('fast',0.3).fadeOut('fast');这似乎对我有用。

您也可以执行类似

的操作

$('#hotkeys_display').stop().html(text).fadeTo('fast',0.3).fadeTo('slow', 0.0);

只是放慢一点。你可以保持fadeOut,但我总是喜欢使用fadeTo,因为它设置了css。

http://jsfiddle.net/M7j9Y/8/这将淡出并将显示设置为无。这样它就完全消失了,但是你可以快速地来回走动而不会看到任何闪烁。

    $('#hotkeys_display').stop(true).html(text).fadeTo('fast',0.3)
        .fadeTo('slow', 0.0, function(){
            $(this).css('display','none');
     });