Il tag <BLINK> è un vecchio tag HTML non standard introdotto da Netscape per la versione 1 del celebre browser. Ora, il tag in questione, oltre a essere assolutamente obsoleto e non supportato da Internet Explorer, va contro a tutte le moderne tendenze di utilizzo degli standard e delle linee guida dell’accessibilità.
Ma quando una collega ti chiede di farle blinkare un testo perché così vuole il cliente, tocca trovare la soluzione. E la soluzione ci sarebbe, dato che blink è uno dei possibili valori della proprietà text-decoration. Peccato però che tale caratteristica non sia necessariamente supportata da un browser conforme agli standard. E difatti Internet Explorer non la supporta. E allora? Allora tocca fare lo script:
var toggle = 1;
var color1 = “#ffffff”;
var color2 = “#000000″;
var blinkInterval = 500;
function blinkClass(){
var elements;
tagNames = Array(”div”, “span”);
for (var k = 0; k < tagNames.length; k++) {
elements = document.getElementsByTagName(tagNames[k]);
for(var i = 0; i < elements.length; i++){
var node = elements.item(i);
for(var j = 0; j < node.attributes.length; j++) {
if(node.attributes.item(j).nodeName == ‘class’) {
if(node.attributes.item(j).nodeValue == ‘blinking’) {
if (toggle == 1) {
eval(”node.style.color = ‘”+color1+”‘”);
} else {
eval(”node.style.color = ‘”+color2+”‘”);
}
}
}
}
}
}
if (toggle == 1) {
toggle=0;
} else {
toggle=1;
}
setTimeout(”blinkClass()”,blinkInterval);
}
La funzione, propriamente richiamata, si mette a far lampeggiare tra color1 e color2 i testi di tutti i tag <div> e <span> di classe “blinking” con una frequenza di lampeggiamento impostata da interval. Inutile aggiungere (ma ormai l’ho fatto) che tale funzione può essere efficacemente utilizzata per scaldare le CPU dei visitatori del vostro sito.
Boja come è tennico questo post!!