PageSourceSearch

https://www.plus.ac.at/wp-content/themes/typo-canvas-child-v2/assets/js/tabs.js?ver=20260924000000

js plus.ac.at collected 2026-09-24 08:51:13 UTC 2,960 bytes, 92 lines download raw bytes

1jQuery(document).ready(function ($) {
2    "use strict";
3
4    window.typo_tabs = {};
5    window.typo_tabs.update_slider = function (wrapper) {
6
7        //updated by lok to implement ellipses
8        var li = $(wrapper).find(".tab_nav_wrapper .tab");
9        var lok_width = 90; //default value 100 to include the padding/margins
10        li.each(function () {
11            lok_width = lok_width +  $(this).width();
12        });
13
14        //provided by agency
15        /* var width = wrapper.scrollWidth;
16        var nav_width = parseInt($(wrapper).find('.tab_nav').outerWidth());
17        if (nav_width <= width) {
18            width = nav_width;
19        } else {
20            width = nav_width;
21        } */
22
23        $(wrapper).find('.tab_nav_slider').css({
24            'width': lok_width
25        });
26
27    };
28
29    window.typo_tabs.update_slider_needle = function ($wrapper, $tab) {
30        var $nav = $tab.parents('.tab_nav').first();
31        var $nav_wrapper = $wrapper.find('.tab_nav_wrapper');
32        var left = parseInt($tab.offset().left) - parseInt($nav.offset().left);
33
34        var tab_width = parseInt($tab.outerWidth());
35        $wrapper.find('.tab_nav_slider_needle').css({
36            'width': tab_width,
37            'left': left
38        });
39
40
41        var nav_width = parseInt($nav.outerWidth());
42        var nav_wrapper_width = parseInt($nav_wrapper.outerWidth());
43        if (nav_width > nav_wrapper_width) {
44            var scroll_left = left - (nav_wrapper_width / 2) + (tab_width / 2);
45
46            // console.log(scroll_left);
47
48            $nav_wrapper.animate({
49                scrollLeft: scroll_left
50            }, 500);
51        }
52
53    };
54
55    $('.tabs_wrapper').each(function () {
56        window.typo_tabs.update_slider(this);
57    });
58
59    $('.tabs_wrapper .tab_nav .active[data-tab]').each(function () {
60        var $tab = $(this);
61        var $wrapper = $tab.parents('.tabs_wrapper').first();
62        window.typo_tabs.update_slider_needle($wrapper, $tab);
63    });
64
65    $(document).on('click', '.tabs_wrapper .tab_nav [data-tab]', function (e) {
66        e.preventDefault();
67        if ($(this).hasClass('active')) { return false; }
68
69        var $tab = $(this);
70        var index = $tab.attr('data-tab');
71        var $wrapper = $tab.parents('.tabs_wrapper').first();
72        $wrapper.find('.active').removeClass('active');
73        $tab.addClass('active');
74        $wrapper.find('.tab_contents [data-tab="' + index + '"]').addClass('active');
75
76        window.typo_tabs.update_slider_needle($wrapper, $tab);
77
78        return false;
79    });
80
81    $(window).resize(function () {
82        $('.tab_nav_wrapper').each(function () {
83            window.typo_tabs.update_slider(this);
84        });
85        $('.tabs_wrapper .tab_nav .active[data-tab]').each(function () {
86            var $tab = $(this);
87            var $wrapper = $tab.parents('.tabs_wrapper').first();
88            window.typo_tabs.update_slider_needle($wrapper, $tab);
89        });
90    });
91
92});

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.