PageSourceSearch

https://www.stadt-stein.de/_assets/f6691f2c8f7fb18adf855cd4e70e11d6/JavaScript/src/dkSlide.js?1789994401

js stadt-stein.de collected 2026-10-02 10:16:04 UTC 2,634 bytes, 90 lines download raw bytes

1const dkToggleClass = (el, classname) => {
2  if (el.classList.contains(classname)) {
3    el.classList.remove(classname);
4    return true;
5  }
6  if (!el.classList.contains(classname)) {
7    el.classList.add(classname);
8    return true;
9  }
10};
11
12const dkSlideUp = (el, time, removeClass, additionalConfig) => {
13  time = time || 500;
14  removeClass = removeClass || null;
15  let height = el.scrollHeight;
16  if (!el.moving) {
17    el.moving = true;
18    el.style.transition = 'height ' + time / 1000 + 's';
19    el.style.height = height + 'px';
20    el.style.overflow = 'hidden';
21    setTimeout(function() {
22      el.style.height = '0';
23    }, 30);
24    setTimeout(function() {
25      el.style.transition = '';
26      el.style.display = 'none';
27      el.style.overflow = '';
28      el.style.height = '';
29      el.classList.remove(removeClass);
30      el.moving = false;
31    }, time + 50);
32  }
33
34  if (additionalConfig && additionalConfig.classToggleElement && additionalConfig.classToggle) {
35    additionalConfig.classToggleElement.classList.remove(additionalConfig.classToggle);
36  }
37
38};
39
40const dkSlideDown = (el, time, addClass, additionalConfig) => {
41  time = time || 500;
42  addClass = addClass || null;
43  if (!el.moving) {
44    el.moving = true;
45    if (el.style.display === 'none') {
46      el.style.display = 'block';
47      let height = el.scrollHeight;
48      el.style.height = '0';
49      el.style.overflow = 'hidden';
50      el.style.transition = 'height ' + time / 1000 + 's';
51      setTimeout(function() {
52        el.style.height = height + 'px';
53      }, 30);
54      setTimeout(function() {
55        el.style.display = '';
56        el.style.height = '';
57        el.style.overflow = '';
58        el.style.transition = '';
59        el.classList.add(addClass);
60        el.moving = false;
61      }, time + 50);
62    } else {
63      el.moving = false;
64    }
65  }
66  if (additionalConfig && additionalConfig.classToggleElement && additionalConfig.classToggle) {
67    additionalConfig.classToggleElement.classList.add(additionalConfig.classToggle);
68  }
69};
70
71const dkSlideToggle = (el, time, additionalConfig) => {
72  time = time || 500;
73  additionalConfig = additionalConfig || {};
74  let state = null
75
76  if (!el.moving) {
77    if (el.style.display === 'none') {
78      state = true
79      dkSlideDown(el, time, additionalConfig.classToggle, null);
80    } else {
81      state = false
82      dkSlideUp(el, time, additionalConfig.classToggle, null);
83    }
84
85    if (additionalConfig && additionalConfig.classToggleElement && additionalConfig.classToggle) {
86      dkToggleClass(additionalConfig.classToggleElement, additionalConfig.classToggle);
87    }
88    return state
89  }
90};

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.