插件描述:aos.js是一款页面滚动元素动画jQuery动画库插件。该动画库可以在页面滚动时提供28种不同的元素动画效果,以及多种easing效果。在页面往回滚动时,元素会恢复到原来的状态。
1.引用
在html文件中引入css文件和js文件
<link href="https://unpkg.com/aos@2.3.1/dist/aos.css" rel="stylesheet">
<script src="https://unpkg.com/aos@2.3.1/dist/aos.js"></script>
2.页面中的使用
1.初始化AOS
<script>
AOS.init();
AOS.init({
disable: false,
startEvent: 'DOMContentLoaded',
initClassName: 'aos-init',
animatedClassName: 'aos-animate',
useClassNames: false,
disableMutationObserver: false,
debounceDelay: 50,
throttleDelay: 99,
offset: 120,
delay: 0,
duration: 400,
easing: 'ease',
once: false,
mirror: false,
anchorPlacement: 'top-bottom',
disable:false,
startEvent:DOMContentLoaded,
});
</script>
2.使用data-aos属性设置动画(在标签中的使用)
<div data-aos="fade-in"></div>
<div
data-aos="fade-up"
data-aos-offset="200"
data-aos-delay="50"
data-aos-duration="1000"
data-aos-easing="ease-in-out"
data-aos-once="false"
data-aos-anchor-placement="top-center">
这里对上述属性做一个解释:
aos-offset:是立刻触发动画还是在指定时间之后触发动画
aos-delay:动画延迟的时间
aos-duration:动画持续时间
aos-easing:动画的easing动画效果
aos-once:动画是否只会触发一次,或者每次上下滚动都会触发
aos-anchor-placement:锚位置,触发动画时元素位于屏幕的位置
</div>
<div data-aos="fade-up" data-aos-anchor=".other-element"></div>
3.API(使AOS对象成为全局变量的三种方式)
AOS.init()
AOS.refresh()
AOS.refreshHard()
4.自定义动画
添加自定义动画 可以自定义自己需要的动画。 例:根据分辨率不同在一个盒子里需要两种不同的动画 1.在js中自定义动画
[data-aos="new-animation"] {
opacity: 0;
transition-property: transform, opacity;
&.aos-animate {
opacity: 1;
}
@media screen and (min-width: 768px) {
transform: translateX(100px);
&.aos-animate {
transform: translateX(0);
}
}
}
2.在html中使用
<div data-aos="new-animation"></div>
此时该元素只为移动端的opacity设置动画,从768px开始该元素也会从右向左滑动
添加自定义easing
[data-aos] {
body[data-aos-easing="new-easing"] &,
&[data-aos][data-aos-easing="new-easing"] {
transition-timing-function: cubic-bezier(.250, .250, .750, .750);
}
}
5.注意事项
设置:duration ,delay
body[data-aos-duration='4000'] [data-aos],
[data-aos][data-aos][data-aos-duration='4000'] {
transition-duration: 4000ms;
}
上述代码将添加4000ms的duration 时间,可供在AOS元素上设置,或在初始化AOS脚本时设置为全局duration 时间。
注:[data-aos][data-aos] 并不是语法错误,这是一种技巧,可以使单个配置比全局配置更重要,就不需要标明!important
<div data-aos="fade-in" data-aos-duration="4000"></div>
3.动画、easings效果点击这个链接
jQuery插件库的链接点这里
对AOS.js插件的使用做一次记录
|