Ver Mensaje Individual
  #3 (permalink)  
Antiguo 09/02/2013, 17:19
Avatar de Panino5001
Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Respuesta: Desbordamientos de Pila

Tu problema no es el que mencionás. Tu problema es de ámbito. Voy a simplificar tu ejemplo para verlo mejor:
Vos tenés esto:
Código PHP:
<script type="text/javascript">
function 
ManagementFrames (algo){ 
 
this.ID algo// Primera cadena array, contiene los string con las id de CSS los divs

    
this.ActiveE = function ActiveE(a){ 
            
             
            
Desactive=setTimeout(function(){alert(this.ID);},500);
 
            
    }
    
 
}
 
var 
ObjectManagementFrames = new ManagementFrames ('pp');
ObjectManagementFrames.ActiveE(1);
</script> 
Y no funciona porque this dentro del setTimeout no refiere al objeto dentro de cuyo método está inserto sino al objeto window, como se aprecia aquí:
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<
title>Documento sin título</title>
<
script type="text/javascript">
function 
ManagementFrames (algo){ 
 
this.ID algo// Primera cadena array, contiene los string con las id de CSS los divs

    
this.ActiveE = function ActiveE(a){ 
            
             
            
Desactive=setTimeout(function(){alert(this.location.href);},500);
 
            
    }
    
 
}
 
var 
ObjectManagementFrames = new ManagementFrames ('pp');
ObjectManagementFrames.ActiveE(1);
</script>

</head>

<body>
</body>
</html> 
Una de las cosas que suelen hacerse para solucionarlo es esta:
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<
title>Documento sin título</title>
<
script type="text/javascript">
function 
ManagementFrames (algo){ 
 
this.ID algo// Primera cadena array, contiene los string con las id de CSS los divs

    
this.ActiveE = function ActiveE(a){ 
            
             var 
_this=this;
            
Desactive=setTimeout(function(){alert(_this.ID);},500);
 
            
    }
    
 
}
 
var 
ObjectManagementFrames = new ManagementFrames ('pp');
ObjectManagementFrames.ActiveE(1);
</script>

</head>

<body>
</body>
</html>