Diff: STRATO-apps/wordpress_03/app/wp-content/themes/blocksy/static/js/frontend/animated-element.js

Keine Baseline-Datei – Diff nur gegen leer.
Zur Liste
1 -
1 + let io = null
2 +
3 + if (window.IntersectionObserver) {
4 + io = new IntersectionObserver((entries) =>
5 + entries
6 + .filter(({ isIntersecting }) => isIntersecting)
7 + .map(({ target }) => target)
8 + .filter((el) => (el.dataset.reveal || '').indexOf('no') > -1)
9 + .map((el, index) => {
10 + let hasBottom = (el.dataset.reveal || '').indexOf('bottom') > -1
11 +
12 + if (hasBottom) {
13 + el.dataset.reveal = `yes:${index + 1}`
14 + } else {
15 + el.dataset.reveal = `yes`
16 + }
17 + })
18 + )
19 + }
20 +
21 + export const watchLayoutContainerForReveal = (layoutEl) => {
22 + if (!window.IntersectionObserver) {
23 + return
24 + }
25 +
26 + let items = layoutEl.querySelectorAll('[data-reveal*="no"]')
27 +
28 + if (items.length === 0) return
29 + if (!items[0].dataset.reveal) return
30 + ;[...items].map((el) => io.observe(el))
31 + }
32 +