PageSourceSearch

https://www.archiv.org.lv/barikades/demo/js/site.js

js archiv.org.lv collected 2026-09-24 19:51:35 UTC 3,108 bytes, 115 lines download raw bytes

1(function() {
2    var _ = v;
3
4    var scrollerDesc = mctracker();
5    scrollerDesc.setup({
6        element: _('.box-container').toArray(),
7        offsetBottom: '20%',
8        once: true,
9    }).onStepEnter(function(response) {
10        var list = _(response.element).find('li');
11        list.forEach(function(item, i) {
12            var delay = i * 150 / 1000;
13            item = _(item);
14            item.attr('style', 'transition-delay: ' + delay + 's;');
15        })
16
17        list.addClass('show')
18    });
19
20
21    var header = function() {
22        var lastKnownScrollY = 0;
23        var currentScrollY = 0;
24        var eleHeader = null;
25        const classes = {
26            pinned: 'header-pin',
27            unpinned: 'header-unpin',
28        };
29
30        function onScroll() {
31            currentScrollY = window.pageYOffset;
32
33            if (currentScrollY <= 0) {
34                restore();
35                return;
36            }
37            if (currentScrollY < lastKnownScrollY) {
38                pin();
39            } else if (currentScrollY > lastKnownScrollY) {
40                unpin();
41            }
42            lastKnownScrollY = currentScrollY;
43        }
44
45        function pin() {
46            eleHeader.removeClass(classes.unpinned);
47            eleHeader.addClass(classes.pinned);
48        }
49        function unpin() {
50            eleHeader.removeClass(classes.pinned);
51            eleHeader.addClass(classes.unpinned);
52        }
53        function restore() {
54            eleHeader.removeClass(classes.pinned);
55            eleHeader.removeClass(classes.unpinned);
56        }
57        eleHeader = _('.main-header');
58        headerHeaight = eleHeader.height();
59        onScroll();
60        window.onload = function() {
61            document.addEventListener('scroll', onScroll, false);
62        }
63    }
64    header();
65
66
67
68
69    var specifics = function(params) {
70        var scrollerDesc = mctracker();
71        scrollerDesc.setup({
72            element: _('.especifications ul').toArray(),
73            bottom: '300',
74            once: true,
75        }).onStepEnter(function(response) {
76            var list = _(response.element).find('li');
77            list.forEach(function(item, i) {
78                var delay = i * 100 / 1000;
79                item = _(item);
80                item.attr('style', 'transition-delay: ' + delay + 's;');
81            })
82            list.addClass('show')
83        });
84    }
85    specifics();
86
87
88    const letters = _('svg').children('g');
89    function animateLetter(index = 0) {
90        if (index > letters.length - 1) {
91            return false;
92        }
93
94        let nextIndex = index + 1;
95        let paths = _(letters[index]).find('path');
96        let duration = (index > 0 ? 390 : 1000);
97
98        anime({
99            targets: paths.toArray(),
100            strokeDashoffset: [anime.setDashoffset, 0],
101            easing: 'easeInOutSine',
102            duration: duration,
103            begin: () => {
104                paths.addClass('hw');
105            },
106            complete: () => {
107                animateLetter(nextIndex);
108            }
109        });
110    }
111    animateLetter(0);
112
113
114
115}());

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.