---
# System prepended metadata

title: GSAP3 Plugins - ScrollTrigger toggleActions
tags: [Gsap]

---

---
tags: Gsap
---
###### tags: `gsap`
# GSAP3 Plugins - ScrollTrigger toggleActions
### <font style="color: #f0f">toggleActions: 'play none none none'</font>
默認情況下，目標標籤遇到啟動點時播放，而在其他三個階段中不執行任何操作。

第一個play代表: onEnter - 向下滾動，目標啟動點(綠) 與 視窗捲軸開始(綠)
第二個none代表: onLeave - 向下滾動，目標結束點(紅) 與 視窗捲軸結束(紅)
第三個none代表: onEnterBack - 向上滾動，目標結束點(紅) 與 視窗捲軸結束(紅)
第四個none代表: onLeaveBack - 向上滾動，目標啟動點(綠) 與 視窗捲軸開始(綠)



---
下面的參數就是可以替換上面4個 'play none none none'
#### <font style="color: #f00">“play”, “pause”, “resume”, “reset”, “restart”, “complete”, “reverse”, and “none”.</font>
“播放”, “暫停”, “恢復”, “重置”, “重新開始”, “完成”, “反向”, 和  “無”。

---
'play none reverse none' 捲下播放捲上返回 (start => scroll start 和 end => scroll end)
'play none none reverse' 捲下播放捲到最上再返回 (start => scroll start 和 start => scroll start)

---
### 加入 makers 便利 偵測起動和結束點
#### <font style="color: #f0f">markers: { start: '20px 80%', end: 'bottom 300px' }</font>

在右邊參考線 markers 的參數說明

start: '20px 80%',  // 啟動點 20px為目標物的頂點20px   80%為視窗捲軸由上往下算的80%
end: 'bottom 300px', // 結束點  bottom目標物的底端bottom  300px為視窗捲軸由上往下算的300px
end: '+=300', //結束點  為啟動點捲動到300px的點
end: () => '+=' + document.querySelector('.c').offsetHeight, //結束點 利用函數選取物件的高為數值