Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/07/2009, 15:49
angel9484
 
Fecha de Ingreso: mayo-2009
Mensajes: 41
Antigüedad: 15 años, 8 meses
Puntos: 1
(Solucionado)problema con funcion setTimeout en Internet Explorer 6

Buenas!
Tengo un problema que solo se reproduce con esa versión de Internet Explorer.
Está claro que lo mas facil es pasar de ese navegador, está obsoleto y es totalmente infiable, pero sabiendo el porcentaje de maquinas con windows no originales y que solo tienen éste navegador lo veo bastante necesario.
Bueno voy al lio, uso esa funcion para:
Código javascript:
Ver original
  1. window.onresize=ejecutaAccion;
  2. window.onload=ejecutaAccion;
  3. var timerID=0;
  4. var ImagenGrande="";
  5. anchoVentana = document.documentElement.clientWidth;
  6. var tamanio = anchoVentana/13.61;
  7. var maximo=tamanio*1.5;
  8. function SumarUnoTamanio(Elemento)
  9. {
  10.     imagen=document.getElementById(Elemento);
  11.     imagen.width = imagen.width+1;
  12.     imagen.style.width=(imagen.width+1)+'px';
  13.     imagen.style.height = 'auto';
  14.     //imagen.height= imagen.width*aspecto;
  15.     if (imagen.width>=maximo)
  16.     {
  17.         window.clearTimeout(timerID);
  18.     }
  19.     else
  20.     {
  21.         AumentarTamanio(Elemento);
  22.     }
  23. }
  24. function RestauraTamanio(Elemento)
  25. {
  26.     imagen=document.getElementById(Elemento);
  27.     imagen.width = tamanio;
  28.     imagen.style.width = tamanio+'px';
  29.     window.clearTimeout(timerID);
  30. }
  31. function AumentarTamanio(Elemento)
  32. {  
  33.     imagen=document.getElementById(Elemento);
  34.     ImagenGrande=Elemento;
  35.     var codigo='SumarUnoTamanio(ImagenGrande)';
  36.     timerID = window.setTimeout(codigo,15,"JavaScript");
  37. }

Con esto consigo, excepto en IE6, que cada 15 milisegundos sume un pixel a la imagen hasta un limite,
el caso es que pongo incluso window.setTimeout("alert('hola')",10); y no sale dicho mensaje jamas.
Espero que me podais ayudar, un saludo y gracias por adelantado!

Última edición por angel9484; 17/07/2009 a las 00:38 Razón: Problema solucionado.