CSS3动画滑动到当屏播放的实现思路分析
实现的方法和思路是当滑动到当前屏幕时需要控制HTML元素的可见性和可见时触发动画效果。控制元素的可见性可以使用CSS中的visibility:hidden/visible;来实现。当然也许会有人提出使用display:none/block来实现,但是这里不可以使用,原因是:display会使元素失去高度和宽度的属性,不方便使用JS来控制高度的变化。控制CSS3动画滑动的当屏时控制可以使用动画元素的外部元素的onmouseover事件或scroll事件来触发,并且增加css样式。Css样式包括:元素可见、绑定动画。使用onmouseover来触发大家很容易理解,但是控制的精细程度不如scroll事件。使用scroll事件触发的原理是当然需要动画效果的元素到达屏幕的中间是触发动画操作,当然这个位置可以调节,根据动画元素的高度来决定,下面有具体的实例。下面是具体的控制CSS3动画效果的代码(我们使用scroll事件来控制):
Javascript控制CSS3动画当屏播放代码:
var animationTop1=$(".div1").offset().top;var animationTop2=$(".div2").offset().top;
var animationTop3=$(".div3").offset().top;
var animationTop4=$(".div4").offset().top;
var animationTop5=$(".div5").offset().top;
$(window).scroll(function(){
var curtop=$(window).scrollTop()+$(window).height()*0.6;
if(curtop>animationTop1&&curtop<animationTop2)
{
$(".div11").css({"visibility":"visible","-webkit-animation":"fadeInUp 1s","animation":"fadeInUp 1s"});
$(".div12").css({"visibility":"visible","-webkit-animation":"fadeInUp 1.5s","animation":"fadeInUp 1.5s"});
$(".div13").css({"visibility":"visible","-webkit-animation":"fadeInUp 2s","animation":"fadeInUp 2s"});
$(".div14").css({"visibility":"visible","-webkit-animation":"fadeInUp 2.5s","animation":"fadeInUp 2.5s"});
}
if(curtop>animationTop2&&curtop<animationTop3)
{
$(".div2").css({"visibility":"visible","-webkit-animation":"bounceInRight 1s","animation":"bounceInRight 2s"});
}
if(curtop>animationTop3&&curtop<animationTop4)
{
$(".div3").css({"visibility":"visible","-webkit-animation":"fadeInUp 2s","animation":"fadeInUp 2s"});
}
if(curtop>animationTop4&&curtop<animationTop5)
{
$(".div4").css({"visibility":"visible","-webkit-animation":"bounceIn 2s","animation":"bounceIn 2s"});
}
});
JQ控制动画代码使用详解:
1、$(window).height()*0.6这里指的是当动画元素到达屏幕的0.6倍高度是触发。可以改为其他数值。2、var animationTop1=$(".div1").offset().top;这里的.div1是动画的CSS类名。
3、({"visibility":"visible","-webkit-animation":"fadeInUp 1s","animation":"fadeInUp 1s"});这里fadeInUp为CSS3动画关键帧的名称。
4、控制代码是在JQuery基础上写的,使用前需要在页面头部加载jquery.js,这段代码需要放在网页的最底部。
以上就是青锋建站给大家分享的如何实现DIV滑动到当屏时才播放,更多网站设计技巧学习,请访问青锋建站http://www.sjzphp.com。青锋建站,提供专业的高品质网站制作服务,包括网站建设,SEO,网络营销,PHP开发,网站建设知名品牌,全国接单,为企业构建强有力的营销平台。
转载请注明来源网址:青锋建站-http://www.sjzphp.com/webdis/animationjq.html