PageSourceSearch

https://www.museum-joanneum.at/typo3temp/assets/compressed/menu-647e65c4032954d47d44b32c54bc884e.js?1790764415

js museum-joanneum.at collected 2026-10-01 10:12:07 UTC 3,689 bytes, 101 lines download raw bytes

1let isTransitioning = false;
2$(document).ready(function () {
3    var nav           = $('.mobile-menu');
4    var menu          = $('.mobile-menu-inner');
5    var menuContainer = $('.mobile-menu-wrapper');
6    var subMenu       = $('.submenu');
7    var toggle        = $('.mobilemenu');
8    var back          = '<div class="hide-submenu"> '+$(".menu-back-button-clone").html()+' </div>';
9    var subHide       = $(back);
10
11    // Toggle menu
12    toggle.on("click", function() {
13        if(!isTransitioning){
14            $(this).toggleClass("active");
15            nav.toggleClass('is-visible');
16            if(menu.hasClass('visually-hidden')) {
17                menu.toggleClass('visually-hidden is-visible')
18                $(".mobile-menu-scroolfix").show();
19                $(".app-universalmuseum-joanneum-content").addClass("mobile-overlay-content-hidden");
20                //$(".app-universalmuseum-joanneum-content").css("visibility","hidden");
21                $(".app-universalmuseum-joanneum-footer").hide();
22                $("body").addClass("backrgound_nav");
23            } else {
24                menu.removeClass('is-visible');
25                $(".mobile-menu-scroolfix").hide();
26                $(".app-universalmuseum-joanneum-content").removeClass("mobile-overlay-content-hidden");
27                //$(".app-universalmuseum-joanneum-content").css("visibility","visible");
28                $(".app-universalmuseum-joanneum-footer").show();
29                $("body").removeClass("backrgound_nav");
30
31                // Wait for CSS animation
32                setTimeout(function() {
33                    nav.removeClass('view-submenu');
34                    menu.addClass('visually-hidden');
35                }, 200);
36            }
37        }
38    });
39
40// Find the element
41    const element = document.querySelector('.mobilemenu-line');
42
43    // Event when transition starts
44    element.addEventListener('transitionstart', function() {
45        isTransitioning = true;
46        console.log('Transition started');
47    });
48
49    // Event when transition ends
50    element.addEventListener('transitionend', function() {
51        isTransitioning = false;
52        console.log('Transition ended');
53    });
54
55
56// Add submenu hide bar
57    subHide.prependTo(subMenu);
58    var subHideToggle = $('.hide-submenu');
59
60    $("[data-href]").click(function (){
61        if(typeof $(this).data("href") !== undefined){
62            if($(this).attr("target") !== "_blank")
63                window.location = $(this).data("href");
64            else
65                window.open(href, "_blank");
66        }
67    });
68
69// Show submenu — clicking anywhere on the mobile-menu-item opens the submenu
70    $('.has-children .mobile-menu-item').on("click", function(e) {
71        e.preventDefault();
72        nav.addClass('view-submenu');
73        // Hide all the submenus...
74        subMenu.hide();
75        // ...except for the one being called
76        $(this).closest('li').find('.submenu').show();
77    });
78// Hide submenu
79    subHideToggle.on("click", function() {
80        nav.removeClass('view-submenu');
81        subMenu.hide();
82    });
83
84
85
86});
87
88function openFooterMenu(e){
89
90    if($(e).children("p").css("display") === "flex"){ //1004 because the Servers window var returns 4 px to much
91       if(!$(e).parent(".menu-items").hasClass("extanded")){
92           $(e).siblings(".menu-item-children").css("visibility","visible");
93       }else{
94           setTimeout(function (){
95               $(e).siblings(".menu-item-children").css("visibility","hidden");
96           },500);
97       }
98       $(e).parent(".menu-items").toggleClass("extanded");
99       $(e).parent(".menu-items").siblings(".extanded").removeClass("extanded");
100    }
101}

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.