From 5c14b26a029477adae87c06b822a594cedac5db8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathias=20Gla=CC=88ser?= Date: Thu, 21 May 2026 16:28:05 +0200 Subject: [PATCH] Add options row above analysis heading with mode toggle and small sandwich menu --- ...card-listen-fundamentalanalyse-drawer.html | 67 +++++++++++++++++++ 1 file changed, 67 insertions(+) diff --git a/patterns/vsf-card-listen-fundamentalanalyse-drawer.html b/patterns/vsf-card-listen-fundamentalanalyse-drawer.html index 75e7241..8359c92 100644 --- a/patterns/vsf-card-listen-fundamentalanalyse-drawer.html +++ b/patterns/vsf-card-listen-fundamentalanalyse-drawer.html @@ -60,6 +60,33 @@

Nächste Quartalszahlen: nicht bekannt

+
+
+ +
+
+
+ + +
+
+

Fundamentalanalyse vom 12.5.2026

@@ -197,6 +224,46 @@ }); } + document.querySelectorAll('.sg-mode-toggle').forEach((toggle) => { + toggle.addEventListener('click', () => { + const nextState = toggle.dataset.active === 'relative' ? 'absolute' : 'relative'; + toggle.dataset.active = nextState; + toggle.dataset.componentState = nextState; + toggle.setAttribute( + 'aria-label', + `Modus Schieber global: ${nextState === 'relative' ? 'relativ' : 'absolut'} aktiv` + ); + }); + }); + + document.querySelectorAll('.sg-sandwich-menu-wrap').forEach((wrap) => { + const button = wrap.querySelector('.sg-sandwich-button'); + if (!button) { + return; + } + + button.addEventListener('click', (event) => { + event.stopPropagation(); + const nextState = wrap.dataset.open !== 'true'; + wrap.dataset.open = String(nextState); + button.setAttribute('aria-expanded', String(nextState)); + }); + }); + + document.addEventListener('click', (event) => { + if (event.target.closest('.sg-sandwich-menu-wrap')) { + return; + } + + document.querySelectorAll('.sg-sandwich-menu-wrap').forEach((wrap) => { + const button = wrap.querySelector('.sg-sandwich-button'); + wrap.dataset.open = 'false'; + if (button) { + button.setAttribute('aria-expanded', 'false'); + } + }); + }); + const tabGroup = document.querySelector('[data-pattern="card-gruppe-mit-tastennavigation"]'); if (tabGroup) {