我在 CSS3 中为特定类定义了动画,当该类添加到元素时只运行一次。问题是当我向其父级添加动态内容时,动画会再运行一次。每次,动画触发器都会添加内容。要动画的列表元素会自动添加到ul其中并动画一次(预期的行为),而不可动画的元素会添加到 JS 事件中。
HTML:
<ul>
    <li class="m"><div class="animable"></div></li>
    <li class="m"><div class="animable animateNow"></div></li>
</ul>
当 JS 事件发生时,动态添加一个列表元素。
<ul>
    <li class="m"><div class="animable"></div></li>
    <li class="m"><div class="animable animateNow"></div></li>
    <li class="m"><div class="animable"></div></li> // <- Sir! I am innocent. I am newly added by JS. IDK, what is happening :/
</ul>
并且在它被附加的那一刻,动画 div 会再次触发其动画一次,依此类推。
这是一个错误吗?我该如何预防?我正在使用纯JS。
CSS:
.animable {
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    width:100%;
    height:100%;
    background:#ecf7d2;
}
.animateNow {
    opacity:0;
    animation-duration: 2s;
    animation-name: animTrans;
    -webkit-animation-duration: 2s;
    -webkit-animation-name: animTrans;
}
