aos.js超贊頁(yè)面滾動(dòng)元素動(dòng)畫jQuery動(dòng)畫庫(kù)

2021-10-18 16:40 更新
ie兼容10
插件描述:aos.js是一款效果超贊的頁(yè)面滾動(dòng)元素動(dòng)畫jQuery動(dòng)畫庫(kù)插件。該動(dòng)畫庫(kù)可以在頁(yè)面滾動(dòng)時(shí)提供28種不同的元素動(dòng)畫效果,以及多種easing效果。在頁(yè)面往回滾動(dòng)時(shí),元素會(huì)恢復(fù)到原來(lái)的狀態(tài)。

簡(jiǎn)要教程

aos.js是一款效果超贊的頁(yè)面滾動(dòng)元素動(dòng)畫jQuery動(dòng)畫庫(kù)插件。該動(dòng)畫庫(kù)可以在頁(yè)面滾動(dòng)時(shí)提供28種不同的元素動(dòng)畫效果,以及多種easing效果。在頁(yè)面往回滾動(dòng)時(shí),元素會(huì)恢復(fù)到原來(lái)的狀態(tài)。

安裝

可以通過(guò)bower來(lái)安裝aos動(dòng)畫庫(kù)插件。

bower install aos --save

使用方法

在頁(yè)面中引入aos.css文件,jquery和aos.js文件

<link rel="stylesheet" href="dist/aos.css" />
<script src="js/jquery.min.js"></script>
<script src="dist/aos.js"></script>

HTML結(jié)構(gòu)

要使用aos動(dòng)畫庫(kù),你需要做的就是在需要?jiǎng)赢嫷脑厣咸砑觓os屬性,例如:

<div aos="animation_name">

aos腳本將會(huì)在頁(yè)面滾動(dòng)時(shí),在該元素上觸發(fā)相應(yīng)的動(dòng)畫。

在元素上還可以添加以下一些屬性:

屬性屬性屬性默認(rèn)值
aos-offset是立刻觸發(fā)動(dòng)畫還是在指定時(shí)間之后觸發(fā)動(dòng)畫200120
aos-duration動(dòng)畫持續(xù)時(shí)間600400
aos-easing動(dòng)畫的easing動(dòng)畫效果ease-in-sineease
aos-delay動(dòng)畫的延遲時(shí)間3000
aos-anchor錨元素。使用它的偏移來(lái)取代實(shí)際元素的偏移來(lái)觸發(fā)動(dòng)畫#selectornull
aos-anchor-placement錨位置,觸發(fā)動(dòng)畫時(shí)元素位于屏幕的位置top-centertop-bottom
aos-once動(dòng)畫是否只會(huì)觸發(fā)一次,或者每次上下滾動(dòng)都會(huì)觸發(fā)truefalse

注意,aos-duration的動(dòng)畫持續(xù)時(shí)間的范圍從50-3000毫秒,如果你想設(shè)置更大的值,可以在頁(yè)面中添加下面的CSS代碼:

body[aos-duration='4000'] [aos], [aos][aos][aos-duration='4000']{
  transition-duration: 4000ms;
}

上面的代碼將動(dòng)畫的持續(xù)時(shí)間修改為4000毫秒。

示例代碼:

<div aos="fade-zoom-in" aos-offset="200" aos-easing="ease-in-sine" aos-duration="600">
<div aos="flip-left" aos-delay="100" aos-anchor=".example-selector">
<div aos="fade-up" aos-anchor-placement="top-center">

如果你擔(dān)心HTML5校驗(yàn)的問題,可以為上面的屬性添加data-前綴。

<div data-aos="animation_name" data-aos-offset="200" data-aos-easing="ease-in-sine">

全局配置

如果你不想單獨(dú)每個(gè)元素做一個(gè)動(dòng)畫配置,你可以通過(guò)init()方法來(lái)統(tǒng)一配置所有元素的動(dòng)畫效果。

AOS.init({
  offset: 200,
  duration: 600,
  easing: 'ease-in-sine',
  delay: 100,
});

額外配置

AOS提供了2個(gè)額外的配置方法,這些方法只能夠在初始化時(shí)使用。

配置描述示例值默認(rèn)值
disableAOS被禁用的條件mobilefalse
startEventAOS被初始化的事件名稱exampleEventDOMContentLoaded

禁用AOS:

如果你項(xiàng)在小屏幕設(shè)備中禁用AOS,可以:

AOS.init({
  disable: 'mobile'
});

你可以傳入3種設(shè)備的類型:mobile、phone或tablet。

你也可以設(shè)置自己的禁用條件,例如在屏幕小于1024像素時(shí)禁用AOS:

disable: window.innerWidth < 1024

或者傳入一個(gè)函數(shù),返回true或false。

disable: function () {
    var maxWidth = 1024;
    return window.innerWidth < maxWidth;
}

開始動(dòng)畫的事件:

如果你不想滾動(dòng)動(dòng)畫從頁(yè)面加載(DOMContentLoaded)后就開始執(zhí)行,可以使用startEvent來(lái)設(shè)置自己的事件,AOS會(huì)在document上監(jiān)聽這個(gè)事件:

AOS.init({
  startEvent: 'someCoolEvent'
});

API

AOS對(duì)象有2個(gè)可用的方法:

  • init

  • refresh

AOS.refresh();

上面的代碼會(huì)重新計(jì)算元素的位置和偏移。

動(dòng)畫和錨位置

動(dòng)畫

淡入淡出動(dòng)畫:

  • fade-up

  • fade-down

  • fade-left

  • fade-right

  • fade-up-right

  • fade-up-left

  • fade-down-right

  • fade-down-left

翻轉(zhuǎn)動(dòng)畫:

  • flip-up

  • flip-down

  • flip-left

  • flip-right

滑動(dòng)動(dòng)畫:

  • slide-up

  • slide-down

  • slide-left

  • slide-right

縮放動(dòng)畫:

  • zoom-in

  • zoom-in-up

  • zoom-in-down

  • zoom-in-left

  • zoom-in-right

  • zoom-out

  • zoom-out-up

  • zoom-out-down

  • zoom-out-left

  • zoom-out-right

錨位置

  • top-bottom

  • top-center

  • top-top

  • center-bottom

  • center-center

  • center-top

  • bottom-bottom

  • bottom-center

  • bottom-top

easing動(dòng)畫

你可以使用以下的一些easing動(dòng)畫效果:

  • linear

  • ease

  • ease-in

  • ease-out

  • ease-in-out

  • ease-in-back

  • ease-out-back

  • ease-in-out-back

  • ease-in-sine

  • ease-out-sine

  • ease-in-out-sine

  • ease-in-quad

  • ease-out-quad

  • ease-in-out-quad

  • ease-in-cubic

  • ease-out-cubic

  • ease-in-out-cubic

  • ease-in-quart

  • ease-out-quart

  • ease-in-out-quart


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)