javascript - 如何管理 Jquery 切换淡入淡出动画的排队?

标签 javascript jquery html toggle fadein

问题

如何防止 jquery 切换函数在上一个切换动画完成之前运行?

我有一个简单的脚本来根据是否选中复选框来显示或隐藏数据。

JQUERY

$('.a').hide();
$('#CB').change(function () {
    if ($(this).is(':checked')) {
        $('.b').fadeOut(100, function () {
            $('.a').fadeIn();
        });
    } else {
        $('.a').fadeOut(100, function () {
            $('.b').fadeIn();
        });
    }
});

问题

当事件连续触发时,两个元素(在本例中为 .a.b)一起变得可见。我认为这是因为在再次触发该函数之前之前的请求尚未完成。

CLICK FOR DEMO

最佳答案

http://jsfiddle.net/keypaul/PbS33/5/

$('.a').hide();
$('#CB').change(function () {

    if ($(this).is(":checked")) {
        $('.b').stop().fadeOut(100, function () {
            $('.a').stop().fadeIn();
        });
    } else {
        $('.a').stop().fadeOut(100, function () {
            $('.b').stop().fadeIn();
        });
    }
});

使用 jquery stop()

http://api.jquery.com/stop/

关于javascript - 如何管理 Jquery 切换淡入淡出动画的排队?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23937593/

相关文章:

html - 使选择文件按钮看起来像一个 div

javascript - 如何修复 RegEX 模式以找到所有匹配项?

javascript - 具有过滤列宽的 Angular 数据表

javascript - 如何使用 javascript 创建一个仅在 IE6 中显示的模板?

jquery - Bootstrap 对齐水平表单和按钮

javascript - 如何将 css id 分配给 Google Maps V3 API 中的标记?

php - 如何安全地分发串行 key ?

javascript - 使用react redux获取删除请求方法不会删除

javascript - 将 Model.ID 绑定(bind)到复选框列表并将 Model.X、Model.Y 等属性发布到 Controller

javascript - 将 URL 替换为 HTML Jquery