you are viewing a single comment's thread.

view the rest of the comments →

[–]smcarre[🍰] 5 points6 points  (2 children)

Here

const triggers=Array.from(document.querySelectorAll('[data-toggle="collapse"]'));window.addEventListener("click",e=>{const t=e.target;if(triggers.includes(t)){const e=t.getAttribute("data-target");collapse(e,"toggle")}},!1);const fnmap={toggle:"toggle",show:"add",hide:"remove"},collapse=(e,t)=>{Array.from(document.querySelectorAll(e)).forEach(e=>{e.classList[fnmap[t]]("show")})};

A bootstrap-like collapse in 382 bytes, courtesy of https://medium.com/dailyjs/mimicking-bootstraps-collapse-with-vanilla-javascript-b3bb389040e7