來點動態和互動,讓網頁動次動 #1 - 視差滾動與 AOS 套件

更新於 發佈於 閱讀時間約 3 分鐘

一個超簡單就能達到滾動視差的套件 AOS

安裝 AOS

一、載入 CDN

AOS 有提供 npm, yarn, bower 和 CDN 安裝,此處先以 CDN 為主,需要同時載入 CSS 和 JS檔案

  • 引入 CSS:加入在 HTML 的 head 標籤裡面,但必須放在自定義的 CSS 前方
<link href="https://unpkg.com/aos@2.3.1/dist/aos.css" rel="stylesheet">
  • 引入 JS:加入在 HTML 的 body 標籤裡的最後方,但必須放在自定義的 JS 檔案前方
<script src="https://unpkg.com/aos@2.3.1/dist/aos.js"></script>

二、在 JS 檔案中初始化 AOS

AOS.init();

基本使用方式

僅使用 AOS 預設動畫,只需要將 AOS 定義好的屬性和對應的值加入到 HTML 文件中,以下是常見的 AOS 屬性名稱:

  • data-aos:AOS 動畫名稱,可以到官方網站看看套用後的效果
  • data-aos-easing:速度曲線
  • data-aos-duration:動畫執行時間,預設值為 1000 毫秒,可寫入值為 50 毫秒 ~ 3000 毫秒(1 秒等於 1000 毫秒),若要想要更多秒數可以透過 CSS 寫入,詳見官方說明
  • data-aos-delay:動畫延遲執行的時間
  • data-aos-offset:偏移量,預設為 100px,如果設為 0 元素就不會偏移
  • data-aos-anchor-placement:觸發動畫的錨點位置
<div data-aos="fade-down"
data-aos-easing="linear"
data-aos-duration="1500">
</div>

更多 data-aosdata-aos-easingdata-aos-anchor-placement 所對應的屬性值可以查看官方文件

AOS 加入自定義設定

一、自定義綁定觸發動畫的元素

  • data-aos-anchor:指定好觸發對象後,可以透過此屬性將觸發對象綁定在被觸發對象上
<div>1</div>
<div>2</div>
<div id="cat">3</div> //碰到此元素時會觸發底下的 #cat 元素
<div>4</div>
<div>5</div>

//被觸發對象,透過 data-aos-anchor 綁定
<div ​data-aos-anchor="#cat">
<img src="cat.jpg" alt="cat">
</div>

二、自定義動畫到 AOS 中

主要透過 CSS 改變

  • [data-aos: name]:自定義的 AOS 名稱,可以寫入元素尚未加入動態前的狀態
  • .aos-animate:元素加入動畫後的最終狀態

一開始看官方文件我也很疑惑 .aos-animate 這個 class 到底哪來的,後來在範例網頁中打開開發者工具,才發現是元素套用 AOS 後,會在觸發時動態新增上去的 class

今天就介紹到這邊,大家可以試試看為自己的網頁加入動態哦~

參考資料

留言
avatar-img
留言分享你的想法!
avatar-img
傑米的沙龍
7會員
30內容數
正在一點一滴學習程式,相信知識量總有一天會匯聚成大海,目前專門研究前端中。
傑米的沙龍的其他內容
2023/10/06
要改變表單元素的樣式其實相當麻煩,有些樣式還不能更改,這篇就來探討如何把它們改成喜歡的模樣吧。
Thumbnail
2023/10/06
要改變表單元素的樣式其實相當麻煩,有些樣式還不能更改,這篇就來探討如何把它們改成喜歡的模樣吧。
Thumbnail
2023/10/04
切版有許多眉角需要注意,來探討那些經常導致切版結果與設計稿產生落差的原因。 一、文字的高度本體是 line-height:🔍 文字所佔據的高度不是由font-size決定,而是line-hight。一開始練習切版時,都想著設定好字的尺寸和字重就 ok 了吧?殊不知這是造成切出來的網頁與設計
Thumbnail
2023/10/04
切版有許多眉角需要注意,來探討那些經常導致切版結果與設計稿產生落差的原因。 一、文字的高度本體是 line-height:🔍 文字所佔據的高度不是由font-size決定,而是line-hight。一開始練習切版時,都想著設定好字的尺寸和字重就 ok 了吧?殊不知這是造成切出來的網頁與設計
Thumbnail
2023/10/03
題目:你將會得到一個單詞,你的任務是返回該單詞的中間字符。如果單詞的長度是奇數,則返回中間字符。如果單詞的長度是偶數,則返回中間的兩個字符。
Thumbnail
2023/10/03
題目:你將會得到一個單詞,你的任務是返回該單詞的中間字符。如果單詞的長度是奇數,則返回中間字符。如果單詞的長度是偶數,則返回中間的兩個字符。
Thumbnail
看更多
你可能也想看
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
分享一個有趣的套件,名為 await-to-js。 可以讓 Promise 與 await 的寫法更簡潔。
Thumbnail
分享一個有趣的套件,名為 await-to-js。 可以讓 Promise 與 await 的寫法更簡潔。
Thumbnail
2023 Vue直播班筆記 - 動態路由Props,接續之前的一般動態路由。分為 "寫死" 及 "彈性" 兩種。
Thumbnail
2023 Vue直播班筆記 - 動態路由Props,接續之前的一般動態路由。分為 "寫死" 及 "彈性" 兩種。
Thumbnail
什麼是 CSS 預處理器 CSS 預處理器是一種工具,使用專門的語法來生成 CSS 樣式表。市面上有許多 CSS 預處理器可供選擇,它們通常會提供一些純 CSS 中沒有的功能,例如變數、混入、巢狀選擇器等。這些功能可以使 CSS 結構更易讀、更易於維護,並提高開發效率。 為什麼使用 CSS 預處
Thumbnail
什麼是 CSS 預處理器 CSS 預處理器是一種工具,使用專門的語法來生成 CSS 樣式表。市面上有許多 CSS 預處理器可供選擇,它們通常會提供一些純 CSS 中沒有的功能,例如變數、混入、巢狀選擇器等。這些功能可以使 CSS 結構更易讀、更易於維護,並提高開發效率。 為什麼使用 CSS 預處
Thumbnail
Swiper.js 是一個功能齊全的輪播套件,除了輪播外,也可以客製化導航按鈕和頁碼等細項。目前支持 JS、React、Vue。但是 Swiper.js Vue 版本主要由 Composition API 風格構成,此篇文章將介紹 Options API 的撰寫方式,以及如何做樣式客製化。
Thumbnail
Swiper.js 是一個功能齊全的輪播套件,除了輪播外,也可以客製化導航按鈕和頁碼等細項。目前支持 JS、React、Vue。但是 Swiper.js Vue 版本主要由 Composition API 風格構成,此篇文章將介紹 Options API 的撰寫方式,以及如何做樣式客製化。
Thumbnail
為什麼需要非同步? 我們在「【Web微知識系列】 Web Workers」有介紹到在瀏覽器可執行腳本Javascript環境底下如何完成非同步的操作, 主要是為了讓任務更有效率的進行, 不會因為一個非常耗時的工作堵塞住整個服務, 導致無法服務他人的窘境。 大家應該經常在餐廳裡會看到服務員協
Thumbnail
為什麼需要非同步? 我們在「【Web微知識系列】 Web Workers」有介紹到在瀏覽器可執行腳本Javascript環境底下如何完成非同步的操作, 主要是為了讓任務更有效率的進行, 不會因為一個非常耗時的工作堵塞住整個服務, 導致無法服務他人的窘境。 大家應該經常在餐廳裡會看到服務員協
Thumbnail
一個超簡單就能達到滾動視差的套件 - AOS
Thumbnail
一個超簡單就能達到滾動視差的套件 - AOS
Thumbnail
今天想分享一下我最近的UI設計練習,這次的練習主題是原型動態效果,雖然自己目前對動效很熟練了,但有一些效果實際上很少被使用,所以借此機會來試試看,也能維持自己的熟練度。
Thumbnail
今天想分享一下我最近的UI設計練習,這次的練習主題是原型動態效果,雖然自己目前對動效很熟練了,但有一些效果實際上很少被使用,所以借此機會來試試看,也能維持自己的熟練度。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News