相关疑难解决方法(0)

如何通过JavaScript重新触发WebKit CSS动画?

所以,我有这个-webkit-animation规则:

@-webkit-keyframes shake {
    0% {
        left: 0;
    }
    25% {
        left: 12px;
    }
    50% {
        left: 0;
    }
    75% {
        left: -12px;
    }
    100% {
        left:0;
    }
}
Run Code Online (Sandbox Code Playgroud)

还有一些CSS定义了我的一些动画规则box:

#box{
    -webkit-animation-duration: .02s;
    -webkit-animation-iteration-count: 10;
    -webkit-animation-timing-function: linear;
}
Run Code Online (Sandbox Code Playgroud)

我可以shake#box这样的:

document.getElementById("box").style.webkitAnimationName = "shake";
Run Code Online (Sandbox Code Playgroud)

但是我以后再也不能动摇了.

这只会震动一次:

someElem.onclick = function(){
    document.getElementById("box").style.webkitAnimationName = "shake";
}
Run Code Online (Sandbox Code Playgroud)

如何在不使用超时或多个动画的情况下通过JavaScript重新触发CSS动画?

javascript css html5 animation webkit

74
推荐指数
4
解决办法
7万
查看次数

标签 统计

animation ×1

css ×1

html5 ×1

javascript ×1

webkit ×1