File size: 1,014 Bytes
3883c60
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
33
34
35
36
37
38
function scrollHorizontally(event, el) {
    event.preventDefault();
    const delta = Math.max(-1, Math.min(1, event.wheelDelta || -event.detail));
    el.scrollLeft -= delta * 40;
    scrollGlow(el)
}

function scrollGlow(el) {
    const leftMax = el.scrollLeftMax
    const leftVal = el.scrollLeft

    let left = false
    let right = false

    if (leftMax !== 0) {
        if (leftVal > 0) {
            left = true
        }
        if (leftVal < leftMax-5) {
            right = true
        }
    }

    el.classList.toggle('leftscroll', left)
    el.classList.toggle('rightscroll', right)
}

export function enableHorScrolling() {
    for (const tabselement of document.querySelectorAll('.tab-nav')) {
        tabselement.addEventListener('wheel', (e) => scrollHorizontally(e, tabselement))
        scrollGlow(tabselement)
    }
    window.addEventListener('resize', () => {
        for (const tabselement of document.querySelectorAll('.tab-nav')) {
            scrollGlow(tabselement)
        }
    })
}