Ciao,
ho realizzato questo codice per aumentare e diminuire le colonne di una griglia con JavaScript usando gli attributi "data-*":
Codice:
const addMultipleListeners = (el, types, listener, options, useCapture) => {
types.forEach(type =>
el.addEventListener(type, listener, options, useCapture)
);
};
addMultipleListeners(
window,
['resize', 'load'],
() => {
var grid = document.getElementById('grid');
if (window.innerWidth < 600) {
grid.setAttribute('data-columns','1');
} else if (window.innerWidth < 700) {
grid.setAttribute('data-columns','2');
} else if (window.innerWidth < 800) {
grid.setAttribute('data-columns','3');
} else if (window.innerWidth < 900) {
grid.setAttribute('data-columns','4');
} else if (window.innerWidth < 1000) {
grid.setAttribute('data-columns','5');
} else if (window.innerWidth < 1200) {
grid.setAttribute('data-columns','6');
} else if (window.innerWidth < 1400) {
grid.setAttribute('data-columns','7');
} else if (window.innerWidth < 1600) {
grid.setAttribute('data-columns','8');
} else if (window.innerWidth < 1700) {
grid.setAttribute('data-columns','9');
}
});
ma funziona solo quando vado in ispeziona e se provo a ridurre la pagina in realtà non segue le indicazioni come in ispeziona ma si ferma a 6 colonne quando dovrebbe arrivare a 8.
Qualcuno mi può aiutare?
Grazie