document.addEventListener("DOMContentLoaded", () => { const $klmnColumns = Array.prototype.slice.call( document.querySelectorAll(".bd-klmn-columns"), 0, ); const $klmnGaps = Array.prototype.slice.call( document.querySelectorAll(".bd-klmn-gap"), 0, ); const $klmnValue = document.getElementById("klmnValue"); $klmnGaps.forEach((el) => { el.addEventListener("mouseenter", () => { const index = el.dataset.value; selectGap(index); }); }); function resetGaps() { $klmnGaps.forEach((el) => { el.classList.remove("bd-is-selected"); }); } function setColumns(n) { $klmnColumns.forEach((el) => { el.className = `columns is-variable bd-klmn-columns is-${n}`; }); } function setValue(n) { const rem = `${n * 0.25}rem`; $klmnValue.innerHTML = rem; } function selectGap(n) { resetGaps(); $klmnGaps[n].classList.add("bd-is-selected"); setColumns(n); setValue(n); } selectGap(3); });