Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/03/2009, 18:13
Avatar de Ratus-BROWN
Ratus-BROWN
 
Fecha de Ingreso: febrero-2009
Ubicación: Valencia
Mensajes: 169
Antigüedad: 16 años
Puntos: 8
Rollover parece más lento en IE

Hola buenas a todos/as,


escribo para hacer una pregunta sobre los rollover de imagenes, he creado una pagina con el siguiente js:

function MM_preloadImages() { //v3.0
var d=document;
if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
var i,x,a=document.MM_sr;
for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
var p,i,x;
if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments;
document.MM_sr=new Array;
for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}


hago las precargas en el body de las imagenes que quiero mostrar y luego en cada imagen <img src="......> llamo a las funciones del js:

onmouseover="MM_swapImage('id','','img/cualquiera.gif')" onmouseout="MM_swapImgRestore()

Bueno he realizado las pruebas para Firefox, Opera y Safari.......pero a la hora de ver los resultados en IE he podido comprobar que los rollover no son tan rapidos como en los demas navegadores......¿Podría decirme alguien que tipo de js tengo que utilizar para que sea optimo en todos los navegadores?

Gracias.
R,brown