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); });