鼠标每次滑动到当前位置,都会触发动画效果。
<div class="aboutCulture">
<div class="aboutCul_con">
<div class="aboutCul_box1">
<div class="aboutLeft_tit">企业文化</div>
<p class="ani-view fade-in-left">标题</p>
<div class="aboutLeft_txt ani-view fade-in-left">
内容
</div>
</div>
<div class="aboutCul_box2">
<ul>
<li>
<img class="cul_img" src="img/icon/about-shiming.png" alt="" />
<div class="aboutCul_tit ani-view fade-in-down">MISSION/使命</div>
<div class="aboutCul_txt ani-view fade-in-down">优越健康的品质生活</div>
</li>
<li>
<img class="cul_img img2" src="img/icon/about-shiming.png" alt="" />
<div class="aboutCul_tit ani-view fade-in-down">CREED/理念</div>
<div class="aboutCul_txt ani-view fade-in-down">用户至上 共享共赢</div>
</li><li>
<img class="cul_img img2" src="img/icon/about-shiming.png" alt="" />
<div class="aboutCul_tit ani-view fade-in-down">CREED/理念</div>
<div class="aboutCul_txt ani-view fade-in-down">用户至上 共享共赢</div>
</li>
<li>
<img class="cul_img img2" src="img/icon/about-shiming.png" alt="" />
<div class="aboutCul_tit ani-view fade-in-down">CREED/理念</div>
<div class="aboutCul_txt ani-view fade-in-down">用户至上 共享共赢</div>
</li>
</ul>
</div>
</div>
</div>
样式CSS:
li {
list-style: none;
}
.aboutCulture {
margin-top: 1000px;
}
.aboutCul_con {
width: 1200px;
margin: 0 auto;
overflow: hidden;
}
.aboutCul_box1 {
width: 35%;
float: left;
}
.aboutCul_box1 .aboutLeft_tit {
font-size: 35px;
}
.aboutCul_box1 p {
font-size: 18px;
margin: 5px auto 20px;
}
.aboutCul_box1 .aboutLeft_txt {
font-size: 14px;
line-height: 25px;
color: #999;
}
.aboutCul_box2 {
width: 60%;
float: right;
}
.aboutCul_box2 ul {
display: flex;
justify-content: space-between;
}
.aboutCul_box2 ul li {
text-align: center;
}
.aboutCul_box2 ul li:nth-child(2) {
animation-delay: 0.4s;
}
.aboutCul_box2 .cul_img {
width: 100px;
border: 1px solid #ffa5da;
border-radius: 50%;
padding: 10px 10px 10px 7px;
transition: all 2s;
}
.aboutCul_box2 .cul_img.img2 {
border: 1px solid #62b3fb;
}
.aboutCul_box2 ul li:hover .cul_img {
transform: rotate(360deg);
}
.aboutCul_box2 .aboutCul_tit {
font-size: 20px;
margin: 15px auto 10px;
}
.aboutCul_box2 ul li:nth-child(2n+1) .aboutCul_tit {
color: #ffa5da;
}
.aboutCul_box2 ul li:nth-child(2n+2) .aboutCul_tit {
color: #62b3fb;
}
.aboutCul_box2 .aboutCul_txt {
font-size: 13px;
color: #999;
}
.aboutCul_txt.ani-view.fadeInDown {
animation-delay: 0.4s;
}
<link rel="stylesheet" type="text/css" href="css/animate.css" />
<script src="js/jquery.min.js" type="text/javascript" charset="utf-8"></script>
<script src="js/animate.js" type="text/javascript" charset="utf-8"></script>
animate.css
@charset "utf-8";
/* css animation */
.trans{
-webkit-transition: all .5s ease;
-moz-transition:all .5s ease;
-o-transition:all .5s ease;
-ms-transition:all .5s ease;
transition:all .5s ease;
}
/* page animation */
.ani-view {
-webkit-animation-duration:1s;
-moz-animation-duration:1s;
-o-animation-duration:1s;
animation-duration:1s;
-webkit-animation-fill-mode:forwards;
-moz-animation-fill-mode:forwards;
-o-animation-fill-mode:forwards;
animation-fill-mode:forwards;
}
.fadeInUp {
-webkit-animation-name: fadeInUp;
animation-name: fadeInUp;
}
.ani-view.fade-in-up{
opacity:0;
opacity:1\0/IE9;
-webkit-transform:translateY(-20px);
-moz-transform:translateY(-20px);
-o-transform:translateY(-20px);
transform:translateY(-20px);
-ms-transform:translateY(0)\0/IE9;
}
.ani-view.fadeInUp {
-webkit-animation-name:fadeInUp;
-moz-animation-name:fadeInUp;
-o-animation-name:fadeInUp;
animation-name:fadeInUp;
}
@-webkit-keyframes fadeInUp {
0% {
opacity:0;
-webkit-transform:translateY(-20px)
}
100% {
opacity:1;
-webkit-transform:translateY(0)
}
}
@-moz-keyframes fadeInUp {
0% {
opacity:0;
-moz-transform:translateY(-20px)
}
100% {
opacity:1;
-moz-transform:translateY(0)
}
}
@-o-keyframes fadeInUp {
0% {
opacity:0;
-o-transform:translateY(-20px)
}
100% {
opacity:1;
-o-transform:translateY(0)
}
}
@keyframes fadeInUp {
0% {
opacity:0;
transform:translateY(-20px)
}
100% {
opacity:1;
transform:translateY(0)
}
}
.ani-view.fade-in-down{
opacity:0;
opacity:1\0/IE9;
-webkit-transform:translateY(20px);
-moz-transform:translateY(20px);
-o-transform:translateY(20px);
transform:translateY(20px);
-ms-transform:translateY(0)\0/IE9;
}
.ani-view.fadeInDown {
-webkit-animation-name:fadeInDown;
-moz-animation-name:fadeInDown;
-o-animation-name:fadeInDown;
animation-name:fadeInDown;
}
@-webkit-keyframes fadeInDown {
0% {
opacity:0;
-webkit-transform:translateY(20px)
}
100% {
opacity:1;
-webkit-transform:translateY(0)
}
}
@-moz-keyframes fadeInDown {
0% {
opacity:0;
-moz-transform:translateY(20px)
}
100% {
opacity:1;
-moz-transform:translateY(0)
}
}
@-o-keyframes fadeInDown {
0% {
opacity:0;
-o-transform:translateY(20px)
}
100% {
opacity:1;
-o-transform:translateY(0)
}
}
@keyframes fadeInDown {
0% {
opacity:0;
transform:translateY(20px)
}
100% {
opacity:1;
transform:translateY(0)
}
}
.ani-view.fade-in-left{
opacity:0;
opacity:1\0/IE9;
-webkit-transform:translateX(-100px);
-moz-transform:translateX(-100px);
-o-transform:translateX(-100px);
transform:translateX(-100px);
-ms-transform:translateX(0)\0/IE9;
}
.ani-view.fadeInLeft {
-webkit-animation-name:fadeInLeft;
-moz-animation-name:fadeInLeft;
-o-animation-name:fadeInLeft;
animation-name:fadeInLeft;
}
@-webkit-keyframes fadeInLeft {
0% {
opacity:0;
-webkit-transform:translateX(-100px)
}
100% {
opacity:1;
-webkit-transform:translateX(0)
}
}
@-moz-keyframes fadeInLeft {
0% {
opacity:0;
-moz-transform:translateX(-100px)
}
100% {
opacity:1;
-moz-transform:translateX(0)
}
}
@-o-keyframes fadeInLeft {
0% {
opacity:0;
-o-transform:translateX(-100px)
}
100% {
opacity:1;
-o-transform:translateX(0)
}
}
@keyframes fadeInLeft {
0% {
opacity:0;
transform:translateX(-100px)
}
100% {
opacity:1;
transform:translateX(0)
}
}
.ani-view.fade-in-right{
opacity:0;
opacity:1\0/IE9;
-webkit-transform:translateX(100px);
-moz-transform:translateX(100px);
-o-transform:translateX(100px);
transform:translateX(100px);
-ms-transform:translateX(0)\0/IE9;
}
.ani-view.fadeInRight {
-webkit-animation-name:fadeInRight;
-moz-animation-name:fadeInRight;
-o-animation-name:fadeInRight;
animation-name:fadeInRight;
}
@-webkit-keyframes fadeInRight {
0% {
opacity:0;
-webkit-transform:translateX(100px)
}
100% {
opacity:1;
-webkit-transform:translateX(0)
}
}
@-moz-keyframes fadeInRight {
0% {
opacity:0;
-moz-transform:translateX(100px)
}
100% {
opacity:1;
-moz-transform:translateX(0)
}
}
@-ms-keyframes fadeInRight {
0% {
opacity:0;
-ms-transform:translateX(100px)
}
100% {
opacity:1;
-ms-transform:translateX(0)
}
}
@-o-keyframes fadeInRight {
0% {
opacity:0;
-o-transform:translateX(100px)
}
100% {
opacity:1;
-o-transform:translateX(0)
}
}
@keyframes fadeInRight {
0% {
opacity:0;
transform:translateX(100px)
}
100% {
opacity:1;
transform:translateX(0)
}
}
animate.js
$(function() {
$(window).scroll(function() {
viewScroll();
});
viewScroll();
function viewScroll() {
var _ismobile = false;
var windowTop = $(window).scrollTop();
var windowBottom = windowTop + $(window).height();
var showNum = !_ismobile ? 4 : 16;
$('.ani-view').each(function() {
var pageQ1 = $(this).offset().top + $(this).height() / showNum;
var pageQ3 = $(this).offset().top + $(this).height() / 1;
if((pageQ1 <= windowBottom) && (pageQ3 >= windowTop)) {
if($(this).hasClass("fade-in-down")) $(this).addClass('fadeInDown');
if($(this).hasClass("fade-in-up")) $(this).addClass('fadeInUp');
if($(this).hasClass("fade-in-left")) $(this).addClass('fadeInLeft');
if($(this).hasClass("fade-in-right")) $(this).addClass('fadeInRight');
} else {
if($(this).hasClass('fadeInUp')) $(this).removeClass('fadeInUp');
if($(this).hasClass('fadeInDown')) $(this).removeClass('fadeInDown');
if($(this).hasClass('fadeInLeft')) $(this).removeClass('fadeInLeft');
if($(this).hasClass('fadeInRight')) $(this).removeClass('fadeInRight');
}
});
}
});