PageSourceSearch

https://cacv-verdun.org/site/templates/scripts/main.js?v1695735210

js cacv-verdun.org collected 2026-10-06 20:21:57 UTC 1,931 bytes, 64 lines download raw bytes

1/** Smoother bootstrap alert dismiss */
2
3$('#alert-top').on('close.bs.alert', function () {
4    $(this).slideUp(200);
5});
6
7/** Hamburger menu actions **/
8
9$('#navbarNav').on('show.bs.collapse', function () {
10    $('.hamburger').addClass('is-active');
11    $('.navbar-brand').addClass('is-active');
12}).on('hide.bs.collapse', function () {
13    $('.hamburger').removeClass('is-active');
14    $('.navbar-brand').removeClass('is-active');
15})
16
17/** Hide / Show navbar on scroll down / scroll up **/
18
19// add padding top to show content behind navbar
20$('body').css('padding-top', $('.navbar').outerHeight() + 'px')
21
22// detect scroll top or down
23if ($('.smart-scroll').length > 0) {
24    var last_scroll_top = 0;
25    $(window).on('scroll', function() {
26        scroll_top = $(this).scrollTop();
27        if (scroll_top > 100) {
28            if (scroll_top < last_scroll_top) {
29                $('.smart-scroll').removeClass('scrolled-down').addClass('scrolled-up');
30            } else {
31                $('.smart-scroll').removeClass('scrolled-up').addClass('scrolled-down');
32            }
33        } else {
34            $('.smart-scroll').removeClass('scrolled-up').removeClass('scrolled-down');
35        }
36        last_scroll_top = scroll_top;
37    });
38}
39
40/** Load images on intersection **/
41
42let images = [...document.querySelectorAll('[data-lazy]')];
43
44const options = {
45    root: null,
46    rootMargin: '0px 0px 200px 0px'
47}
48
49function onIntersection(imageEntities) {
50    imageEntities.forEach(image => {
51        if (image.isIntersecting) {
52            observer.unobserve(image.target);
53            if (image.target.src) {
54                image.target.src = image.target.dataset.lazy;
55            } else {
56                image.target.style.backgroundImage = 'url('+image.target.dataset.lazy+')';
57            }
58        }
59    })
60}
61
62let observer = new IntersectionObserver(onIntersection, options);
63
64images.forEach(image => observer.observe(image));

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.