js触发css3图片炫酷动画,滚动js触发css3动画

  • Post author:
  • Post category:其他


css代码:

.section,.section .section-content p{

-webkit-transition: all 2s ease-out;

-moz-transition: all 2s ease-out;

-ms-transition: all 2s ease-out;

-o-transition: all 2s ease-out;

transition: all 2s ease-out;

}

body{background-color: #48cfad;color: #fff;overflow-x: hidden;}

header{height: 100vh;text-align: center;line-height: 100vh;}

.page-wrapper{width: 80%;margin: 50px auto;box-sizing: border-box;}

.section{

width: 100%;height: 100vh;padding: 40px 0;opacity: 0;

-webkit-transform: translateY(50px);

-moz-transform: translateY(50px);

-ms-transform: translateY(50px);

-o-transform: translateY(50px);

transform: translateY(50px);

}

.section h2{font-size: 30px;text-align: center;}

.section .section-content{width: 80%;margin: 0 auto;text-align: center;}

.section .section-content p{

max-width: 80%;margin: 20px auto 50px;

-webkit-transform: translateX(-100px);

-moz-transform: translateX(-100px);

-ms-transform: translateX(-100px);

-o-transform: translateX(-100px);

transform: translateX(-100px);

}

.section.animation{

opacity: 1;

-webkit-transform: translateY(0);

-moz-transform: translateY(0);

-ms-transform: translateY(0);

-o-transform: translateY(0);

transform: translateY(0);

}

.section.animation .section-content p{

-webkit-transform: translateX(0);

-moz-transform: translateX(0);

-ms-transform: translateX(0);

-o-transform: translateX(0);

transform: translateX(0);

}

html代码:

Animation on Scroll

SECTION

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad animi at, atque commodi cupiditate doloremque eius exercitationem, maiores modi obcaecati officia quod, recusandae sed sequi sit soluta sunt vitae! Temporibus.

SECTION

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad animi at, atque commodi cupiditate doloremque eius exercitationem, maiores modi obcaecati officia quod, recusandae sed sequi sit soluta sunt vitae! Temporibus.

js代码:

function revealOnScroll() {

var scrolled = $(window).scrollTop();// 视窗,即viewport,页面可视范围的窗口

$(“.section”).each(function() {

var current = $(this), // 当前元素

w_height = $(window).outerHeight(), //视窗高度

offsetTop = current.offset().top; //当前元素离顶部的高度

// 计算高度差(此处预留50是为了看效果)

// 当元素进入视窗时,添加class

if (scrolled + w_height – 50 > offsetTop) {

current.addClass(“animation”);

} else {

current.removeClass(“animation”);

}

});

}

$(window).on(“scroll”, revealOnScroll);