html5中文学习网

您的位置: 首页 > 网页制作 > css教程 » 正文

CSS3动画效果回调处理详解_css3_CSS_网页制作

[ ] 已经帮助:人解决问题
这篇文章主要详细介绍了CSS3动画效果回调处理,需要的朋友可以参考下

我们在做js动画的时候,很多时候都需要做回调处理,如在一个动画完成后触发一个事件、一个动画完成后执行另外一个动画等等,但在使用CSS3动画时能不能捕获到运动的状态做回调处理呢?v5QHTML5中文学习网 - HTML5先行者学习网

CSS3动画也是可以做回调处理的,这里分为两个属性,一个是transition[w3c文档],另外一个是animation[w3c文档]。v5QHTML5中文学习网 - HTML5先行者学习网

1、transitionv5QHTML5中文学习网 - HTML5先行者学习网

对于transition,可以监听transitionend事件,当动画完成时触发,可以这样使用:v5QHTML5中文学习网 - HTML5先行者学习网


复制代码
代码如下:
v5QHTML5中文学习网 - HTML5先行者学习网
<!DOCTYPE html>v5QHTML5中文学习网 - HTML5先行者学习网
<html lang="en">v5QHTML5中文学习网 - HTML5先行者学习网
<head>v5QHTML5中文学习网 - HTML5先行者学习网
<meta charset="UTF-8">v5QHTML5中文学习网 - HTML5先行者学习网
<title>css3-transitionend - BeyondWeb</title>v5QHTML5中文学习网 - HTML5先行者学习网
<style>v5QHTML5中文学习网 - HTML5先行者学习网
* {margin: 0; padding: 0;}v5QHTML5中文学习网 - HTML5先行者学习网
.rect {v5QHTML5中文学习网 - HTML5先行者学习网
width: 100px;v5QHTML5中文学习网 - HTML5先行者学习网
height: 100px;v5QHTML5中文学习网 - HTML5先行者学习网
background-color: #f80;v5QHTML5中文学习网 - HTML5先行者学习网
-webkit-transition: all .5s;v5QHTML5中文学习网 - HTML5先行者学习网
}v5QHTML5中文学习网 - HTML5先行者学习网
</style>v5QHTML5中文学习网 - HTML5先行者学习网
<script>v5QHTML5中文学习网 - HTML5先行者学习网
window.onload = function () {v5QHTML5中文学习网 - HTML5先行者学习网
var _rect = document.querySelector('.rect');v5QHTML5中文学习网 - HTML5先行者学习网
_rect.onclick = function () {v5QHTML5中文学习网 - HTML5先行者学习网
_rect.style.webkitTransform = 'translateX(300px)';v5QHTML5中文学习网 - HTML5先行者学习网
}</p><p> _rect.addEventListener('webkitTransitionEnd', function () {v5QHTML5中文学习网 - HTML5先行者学习网
alert('动画执行完毕!');v5QHTML5中文学习网 - HTML5先行者学习网
// callback herev5QHTML5中文学习网 - HTML5先行者学习网
}, false);v5QHTML5中文学习网 - HTML5先行者学习网
}v5QHTML5中文学习网 - HTML5先行者学习网
</script>v5QHTML5中文学习网 - HTML5先行者学习网
</head>v5QHTML5中文学习网 - HTML5先行者学习网
<body>v5QHTML5中文学习网 - HTML5先行者学习网
<div class="rect"></div>v5QHTML5中文学习网 - HTML5先行者学习网
</body>v5QHTML5中文学习网 - HTML5先行者学习网
</html>v5QHTML5中文学习网 - HTML5先行者学习网
v5QHTML5中文学习网 - HTML5先行者学习网

2、animationv5QHTML5中文学习网 - HTML5先行者学习网

对于animation我们可以监听animationend事件,示例代码如下:v5QHTML5中文学习网 - HTML5先行者学习网


复制代码
代码如下:
v5QHTML5中文学习网 - HTML5先行者学习网
<!DOCTYPE html>v5QHTML5中文学习网 - HTML5先行者学习网
<html lang="en">v5QHTML5中文学习网 - HTML5先行者学习网
<head>v5QHTML5中文学习网 - HTML5先行者学习网
<meta charset="UTF-8">v5QHTML5中文学习网 - HTML5先行者学习网
<title>css3-animationend - BeyondWeb</title>v5QHTML5中文学习网 - HTML5先行者学习网
<style>v5QHTML5中文学习网 - HTML5先行者学习网
* {margin: 0; padding: 0;}v5QHTML5中文学习网 - HTML5先行者学习网
.rect {v5QHTML5中文学习网 - HTML5先行者学习网
position: relative;v5QHTML5中文学习网 - HTML5先行者学习网
width: 100px;v5QHTML5中文学习网 - HTML5先行者学习网
height: 100px;v5QHTML5中文学习网 - HTML5先行者学习网
background-color: #f80;v5QHTML5中文学习网 - HTML5先行者学习网
}</p><p> @-webkit-keyframes move {v5QHTML5中文学习网 - HTML5先行者学习网
from {v5QHTML5中文学习网 - HTML5先行者学习网
-webkit-transform: rotate(0);v5QHTML5中文学习网 - HTML5先行者学习网
}v5QHTML5中文学习网 - HTML5先行者学习网
to {v5QHTML5中文学习网 - HTML5先行者学习网
-webkit-transform: rotate(360deg);v5QHTML5中文学习网 - HTML5先行者学习网
}v5QHTML5中文学习网 - HTML5先行者学习网
}v5QHTML5中文学习网 - HTML5先行者学习网
</style>v5QHTML5中文学习网 - HTML5先行者学习网
<script>v5QHTML5中文学习网 - HTML5先行者学习网
window.onload = function () {v5QHTML5中文学习网 - HTML5先行者学习网
var _rect = document.querySelector('.rect');v5QHTML5中文学习网 - HTML5先行者学习网
_rect.onclick = function () {v5QHTML5中文学习网 - HTML5先行者学习网
_rect.style.webkitAnimation = 'move 3s';v5QHTML5中文学习网 - HTML5先行者学习网
}</p><p> _rect.addEventListener('webkitAnimationEnd', function () {v5QHTML5中文学习网 - HTML5先行者学习网
alert('动画执行完毕!');v5QHTML5中文学习网 - HTML5先行者学习网
// callback herev5QHTML5中文学习网 - HTML5先行者学习网
}, false);v5QHTML5中文学习网 - HTML5先行者学习网
}v5QHTML5中文学习网 - HTML5先行者学习网
</script>v5QHTML5中文学习网 - HTML5先行者学习网
</head>v5QHTML5中文学习网 - HTML5先行者学习网
<body>v5QHTML5中文学习网 - HTML5先行者学习网
<div class="rect"></div>v5QHTML5中文学习网 - HTML5先行者学习网
</body>v5QHTML5中文学习网 - HTML5先行者学习网
</html>v5QHTML5中文学习网 - HTML5先行者学习网
v5QHTML5中文学习网 - HTML5先行者学习网

以上就是关于CSS3动画回调处理的一些内容,最近在做H5页面时用到了,总结一下。

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助