javascript - 惊人的 CSS 动画

标签 javascript jquery css css-animations

我有一个 CSS 动画,我想以 200 毫秒的间隔应用它。我已经像这样设置了 CSS:

.discrete {
    position:relative;
    opacity:1;

    -webkit-transition: all .5s linear;
    -moz-transition: all .5s linear;
    -o-transition: all .5s linear;
    transition: all .5s linear;
}

.discrete.out {
    left:-40px;
    opacity:0;    
}

然后我想以 200 毫秒的间隔错开应用 .discrete.out 类。我尝试了以下方法:

$('.discrete').each(function() {
    $(this).delay(200).addClass('out');
});

还有这个:

$('.discrete').each(function() {
   var theNode = $(this); 
   setTimeout(function() {
       theNode.addClass('out');
    }, 200);
});

但在这两种情况下,动画都是同时发生的!

有什么想法吗?

最佳答案

你可以使用

var els = $('.discrete'),
    i = 0,
    f = function () {
        $(els[i++]).addClass('out');
        if(i < els.length) setTimeout(f, 200);
    };
f();

Demo

关于javascript - 惊人的 CSS 动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20107526/

相关文章:

php - jQuery 自动建议数组样式

javascript - 在 JQGrid 中创建复杂的标题布局并在单元格中设置颜色

css - 删除行中第一列和最后一列的填充

javascript - 使用 Formik 更新 Material-UI TextField onBlur (React)

ajax - 卸载 Google map API?

php - iPhone 手机 safari JSON 解析错误

javascript - 如何制作表格宽度大于100%的固定表头表格

javascript - 在这种情况下如何进行原型(prototype)继承?

javascript - 有人可以用最简单的术语解释如何使用事件监听器吗?

javascript - 找不到事件定义