MCPcopy
hub / github.com/jlmakes/scrollreveal / initialize

Function initialize

src/instance/functions/initialize.js:5–43  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

3import rinse from './rinse'
4
5export default function initialize() {
6 rinse.call(this)
7
8 each(this.store.elements, element => {
9 let styles = [element.styles.inline.generated]
10
11 if (element.visible) {
12 styles.push(element.styles.opacity.computed)
13 styles.push(element.styles.transform.generated.final)
14 element.revealed = true
15 } else {
16 styles.push(element.styles.opacity.generated)
17 styles.push(element.styles.transform.generated.initial)
18 element.revealed = false
19 }
20
21 applyStyle(element.node, styles.filter((s) => s !== '').join(' '))
22 })
23
24 each(this.store.containers, container => {
25 const target =
26 container.node === document.documentElement ? window : container.node
27 target.addEventListener('scroll', this.delegate)
28 target.addEventListener('resize', this.delegate)
29 })
30
31 /**
32 * Manually invoke delegate once to capture
33 * element and container dimensions, container
34 * scroll position, and trigger any valid reveals
35 */
36 this.delegate()
37
38 /**
39 * Wipe any existing `setTimeout` now
40 * that initialization has completed.
41 */
42 this.initTimeout = null
43}

Callers

nothing calls this directly

Calls 2

applyStyleFunction · 0.90
eachFunction · 0.85

Tested by

no test coverage detected