Originariamente inviato da Virus_101
Non capirò mai perche' non usate jquery per queste cose !!!!!!
Per almeno quattro validi motivi:- Perché l'utente l'ha chiesto esplicitamente.
- Perché non ce n'è motivo.
- Perché il codice che inserirai dentro "// FAI COSE" sarà sicuramente più lungo di quello che gli abbiamo postato.
- Perché rallenterai l'apertura della pagina di ben 32 kb di codice da parsare.
Aggiungo inoltre che senza jQuery puoi benissimo avere una struttura molto simile a quella che a te piace tanto, ma in puro JavaScript… così:
codice:
Array.prototype.forEach.call(document.getElementsByClassName("tuaClasse"), function(elem, id) {
// FAI COSE
});
oppure così:
codice:
Array.prototype.forEach.call(document.querySelectorAll(".tuaClasse"), function(elem, id) {
// FAI COSE
});
O, se non ti piace l'"eleganza", puoi anche "comprimere" il codice che avevo postato…:
codice:
window.onload = function () {
var a, b = -1, c = document.getElementsByClassName("alternanda");
setInterval((a=function(){var d,e;for(d=0,e=c.length,b=(b+1)%e;d<e;c[d].style.display=d++===b?"block":"none");},a(),a),3000);
};
E ricorda inoltre questo. Tra costruirti tu le cose in maniera mirata e usare una libreria multifunzionale la seconda opzione non sarà mai ottimizzata come la prima.
Io ad esempio in questo periodo sto usando un vecchio pc con 700 Mhz di CPU. Sinceramente quando navigo faccio gli scongiuri per non incontrare pagine che usano jQuery.