Widget: Compass: Difference between revisions

From LINKS Community Center
Jump to: navigation, search
Eschmidt (talk | contribs)
No edit summary
Eschmidt (talk | contribs)
No edit summary
Line 740: Line 740:
         document.getElementById('cmp-container').addEventListener('click', event => {
         document.getElementById('cmp-container').addEventListener('click', event => {
             if (event.target.tagName === 'H2') {
             if (event.target.tagName === 'H2') {
                 document.querySelectorAll('H2').forEach(h2 => {
                 document.querySelectorAll('H2').forEach(el => {
                     if (h2 === event.target) h2.classList.toggle('opened');
                     if (el === event.target) el.classList.toggle('opened');
                     else h2.classList.remove('opened');
                     else el.classList.remove('opened');
                 });
                 });


                 const theme = event.target.closest('.theme');
                 const group = event.target.closest('.theme');
                 document.querySelectorAll('.subtheme').forEach(el => {
                 document.querySelectorAll('.subtheme').forEach(el => {
                     if (theme.contains(el)) el.classList.toggle('opened');
                     if (group.contains(el)) el.classList.toggle('opened');
                     else el.classList.remove('opened');
                     else el.classList.remove('opened');
                 });
                 });
             }
             }
             if (event.target.tagName === 'H3') {
             if (event.target.tagName === 'H3') {
                 document.querySelectorAll('H3').forEach(h3 => {
                 document.querySelectorAll('H3').forEach(el => {
                     if (h3 === event.target) h3.classList.toggle('opened');
                     if (el === event.target) el.classList.toggle('opened');
                     else h3.classList.remove('opened');
                     else el.classList.remove('opened');
                 });
                 });


                 const theme = event.target.closest('.subtheme');
                 const group = event.target.closest('.subtheme');
                 document.querySelectorAll('.question').forEach(el => {
                 document.querySelectorAll('.question').forEach(el => {
                     if (theme.contains(el)) el.classList.toggle('opened');
                     if (group.contains(el)) el.classList.toggle('opened');
                     else el.classList.remove('opened');
                     else el.classList.remove('opened');
                 });
                 });
                // event.target.classList.toggle('opened');
                // event.target.closest('.subtheme').querySelectorAll('.question').forEach(el => el.classList.toggle('opened'));
             }
             }
             if (event.target.tagName === 'H4') {
             if (event.target.tagName === 'H4') {
                 event.target.classList.toggle('opened');
                 document.querySelectorAll('H4').forEach(el => {
                 event.target.closest('.question').querySelector('.answer').classList.toggle('opened');
                    if (el === event.target) el.classList.toggle('opened');
                    else el.classList.remove('opened');
                });
 
                 const group = event.target.closest('.question');
                document.querySelectorAll('.answer').forEach(el => {
                    if (group.contains(el)) el.classList.toggle('opened');
                    else el.classList.remove('opened');
                });
             }
             }
         });
         });

Revision as of 17:45, 7 December 2022

Development version of the Compass.
Not ready for production!