Salve a tutti.

Ho fatto un pannello di controllo con dei pulsanti in grafica che, quando il mouse ci passa sopra cambiano immagine (un semplice effetto rollover per aumentare l'esperienza di navigazione dell'utente).

Per evitare il "blink" (ovvero il "lampeggio" bianco tra quando passi il mouse e viene mostrata la seconda immagine), ho creato questo semplice preloader javascript:

codice:
function preload()
{
	if (!document.images) return;
	var imgs = new Array();
	var arguments = preload.arguments;
	for (var i = 0; i < arguments.length; i++)
	{
			imgs[i] = new Image();
			imgs[i].src = arguments[i];
	}
}
che viene lanciata con un semplice

codice:
preload('img/pannello_img/green_online.gif'
				,'img/pannello_img/grey_online.gif'
				,'img/pannello_img/red_offline.gif'
				,'img/pannello_img/grey_offline.gif')
Con i vari browser "seri" tutto ok, funziona alla meraviglia e l'effetto di rollover avviene istantaneamente.

Con Explorer (anche con IE8), invece, il preload sembra non essere eseguito in quanto, al primo passaggio, c'è il blink a cui facevo riferimento prima, risultando molto fastidioso.

Avete qualche idea su dove sia l'errore?