ScrollReveal
window.sr = ScrollReveal({
reset: true
});
sr.reveal('.foo', {
duration: 10000, // 持续时间
origin: 'left', // 开始的方向 (偏移 top:自上而下, bottom:自下而上, left:自左往右, right:自右往左)
distance: '0px', // 执行距离
opacity: 0, // 初始透明度 (过度到1的效果) 淡入淡出
delay: 0.2, // 延迟
interval: 0, // 执行间隔(时间)
easing: 'cubic-bezier(0.6, 0.2, 0.1, 1)', // 动画效果 和 动画曲线 属性{ease, ease-in, ease-in-out, ease-out, step-start, step-end, steps(), cubic-bezier()}
desktop: true, // 是否在电脑上面执行
mobile: true, // 是否在手机上面执行
reset: false, // 是否重复执行(滚动鼠标时,动画开关(默认是false没有打开鼠标滚动的动画开关))
rotate: {x: 0, y: 0, z: 0}, // 初始角度 (过度到0的效果) 翻转特效
cleanup: false, // 暂时不知道是什么东西
container: document.documentElement, // 执行容器(后跟元素,填写后只有容器内的元素执行动画)
useDelay: 'always', // 延时执行方式(always(一直延时执行),once(只延时执行一次),onload(只在加载时延时执行))
viewFactor: 0.0, // 视图显示元素百分之多少的时候执行动画(单位:小数,例:0.50 在元素展示超过百分之五十的时候,执行动画)
viewOffset: { // 视图偏移(把视图抽象成元素移动)
top: 0,
right: 0,
bottom: 0,
left: 0
},
beforeReveal: function (domEl) { // 当动画开始之前会被触发
console.log('动画执行了');
},
beforeReset: function (domEl) { // 鼠标滚轮滚动之前会被触发
console.log('滚轮开始---');
},
afterReveal: function (domEl) { // 当动画开始之后会被触发
console.log('动画结束了');
},
afterReset: function (domEl) { // 鼠标滚轮滚动之后会被触发
console.log('滚轮结束了');
}
});