gpt4 book ai didi

jquery - CSS3 - 添加类来触发动画并在完成时删除类

转载 作者:太空狗 更新时间:2023-10-29 12:28:20 24 4
gpt4 key购买 nike

我有一个 div,当我单击它时,jquery 添加了一个启动动画运行的类。当动画停止时(3 秒后),我希望删除该类,以便再次单击 div 时动画将重新开始。

这只是测试,目前只有 Chrome 浏览器。

这是我的 CSS3:

.spin360
{
-webkit-animation-name: spin;
-webkit-animation-duration: 3s;
-webkit-animation-iteration-count: 1;
-webkit-animation-timing-function: ease;
-webkit-animation-fill-mode: forwards;
}

@-webkit-keyframes spin
{
0% { -webkit-transform: rotateX(0); }
100% { -webkit-transform: rotateX(-360deg); }
}

这是我的脚本:

<script type="text/javascript">
$(document).ready(function () {
$('#spinButton').click(function () {
$('#shape').addClass('spin360');
});
});
</script>

这是我尝试过的:

<script type="text/javascript">
$(document).ready(function () {
$('#spinButton').click(function () {
$('#shape').addClass('spin360').on('webkitAnimationEnd', function () {
$('#shape').removeClass('spin360');
});
});
});
</script>

<script type="text/javascript">
$(document).ready(function () {
$('#spinButton').click(function () {
$('#shape').addClass('spin360');
});

$('#spinButton').addEventListener('webkitAnimationEnd', function (e) {
$('#shape').removeClass('spin360');
});
});
</script>

在所有情况下 - 我的动画会在第一次点击时运行,但不会在后续点击时运行。

最佳答案

您也可以通过跨浏览器的方式来完成:

$('#spinButton').bind('animationend webkitAnimationEnd MSAnimationEnd oAnimationEnd', function (e) {
$('#shape').removeClass('spin360');
});

关于jquery - CSS3 - 添加类来触发动画并在完成时删除类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11784831/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com