PageSourceSearch

https://www.open9.de/_assets/2fe3169786e44755009c78089e4cc3e6/JavaScript/Extensions/container.js?1742381599

js open9.de collected 2026-10-04 05:50:52 UTC 3,761 bytes, 91 lines download raw bytes

1$(document).ready(function () {
2    tabs();
3    accordion();
4});
5
6function tabs() {
7    $('.frame-type-tabs, .tabs.-vertical').each(function () {
8        var $tabs = $(this);
9        var $tabsButtons = $tabs.find("> .tabs__nav > .tabs__button");
10        var $numberOfAllItems = $tabsButtons.length;
11
12        if ($numberOfAllItems != 0) {
13            $tabsButtons.unbind('click').click(function () {
14                $tabs.find("> .tabs__nav > .tabs__button").removeClass('-active');
15                $tabs.find("> .tabs__content").removeClass('-active');
16                $(this).addClass('-active');
17                var $thisTabContent = $(this).attr('data-target');
18                $($thisTabContent).addClass('-active');
19            });
20        }
21    });
22}
23
24function accordion() {
25
26    $('.accordion').each(function () {
27        var $accordion = $(this);
28        var $accordionButtons = $accordion.find("> .accordion__item > .accordion__header > .accordion__button");
29        var $numberOfAllItems = $accordionButtons.length;
30        if ($numberOfAllItems == 0) {
31            return;
32        }
33        var $accordionContent = $accordion.find("> .accordion__item > .accordion__content");
34
35        // open another accordion when child hash of accordion in url
36        var hash = window.location.hash;
37        if ($accordion.find(hash).length) {
38            $accordionButtons.attr('aria-expanded', 'false');
39            $(hash).closest('.accordion__content').prev().attr('aria-expanded', 'true');
40
41            $accordion.find("> .accordion__item > .accordion__header").removeClass('-active');
42            $(hash).closest('.accordion__content').prev().addClass('-active');
43
44            if ($accordion.hasClass('-horizontal')) {
45                $accordion.find('> .accordion__item').removeAttr("style");
46                $(hash).closest('.accordion__item').css({'flex-grow': $numberOfAllItems});
47            }
48        }
49
50        // accordion button click
51        $accordionButtons.unbind('click').click(function () {
52            var $thisAccordionContent = $($(this).attr('data-target'));
53            var $thisAccordionHeader = $(this).parent();
54
55            // close when open
56            if ($thisAccordionHeader.hasClass('-active')) {
57                $(this).attr('aria-expanded', 'false');
58
59                if ($accordion.hasClass('-vertical')) {
60                    $thisAccordionContent.slideUp(function () {
61                        $thisAccordionHeader.removeClass('-active');
62                    });
63                }
64                if ($accordion.hasClass('-horizontal')) {
65                    $thisAccordionHeader.removeClass('-active');
66                    $(this).closest('.accordion__item').removeAttr("style");
67                }
68            // open when closed
69            } else {
70                $accordionButtons.attr('aria-expanded', 'false');
71                $(this).attr('aria-expanded', 'true');
72
73                if ($accordion.hasClass('-vertical')) {
74                    $accordionContent.slideUp(function () {
75                        $(this).prev('.accordion__header').removeClass('-active');
76                    });
77                    $thisAccordionContent.slideDown(function () {
78                        $thisAccordionHeader.addClass('-active');
79                    });
80                }
81
82                if ($accordion.hasClass('-horizontal')) {
83                    $accordion.find("> .accordion__item > .accordion__header").removeClass('-active');
84                    $thisAccordionHeader.addClass('-active');
85                    $accordion.find('> .accordion__item').removeAttr("style");
86                    $(this).closest('.accordion__item').css({'flex-grow': $numberOfAllItems});
87                }
88            }
89        });
90    });
91}

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.