forked from jlmakes/scrollreveal
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdestroy.js
More file actions
32 lines (29 loc) · 748 Bytes
/
destroy.js
File metadata and controls
32 lines (29 loc) · 748 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import each from '../../utils/each'
import { applyStyle } from '../functions/style'
export default function destroy() {
/**
* Remove all generated styles and element ids
*/
each(this.store.elements, element => {
applyStyle(element.node, element.styles.inline.generated)
element.node.removeAttribute('data-sr-id')
})
/**
* Remove all event listeners.
*/
each(this.store.containers, container => {
const target =
container.node === document.documentElement ? window : container.node
target.removeEventListener('scroll', this.delegate)
target.removeEventListener('resize', this.delegate)
})
/**
* Clear all data from the store
*/
this.store = {
containers: {},
elements: {},
history: [],
sequences: {}
}
}