Foros del Web » Programando para Internet » Javascript »

Problema con function dentro de metodo de un objeto

Estas en el tema de Problema con function dentro de metodo de un objeto en el foro de Javascript en Foros del Web. Buenas, tengo un objeto: Código: function objeto() { } objeto.prototype.load = function() { function init() { try { if(!document.all) { alert("OK Mozilla"); } else { ...
  #1 (permalink)  
Antiguo 06/05/2004, 01:03
Avatar de epplestun  
Fecha de Ingreso: octubre-2001
Mensajes: 1.621
Antigüedad: 23 años
Puntos: 5
Problema con function dentro de metodo de un objeto

Buenas, tengo un objeto:

Código:
function objeto() {
}

objeto.prototype.load = function() {
	function init() {
		try {
			if(!document.all) {
				alert("OK Mozilla");
			} else {
				alret("OK Internet Explorer");
			}
		} catch(e) {
			setTimeOut("init()", 100);
		}
	}
	init();
}

objeto = new objeto();
objeto.load();
Pues eso ... me da error al hacer el setTimeOut, me dice que init no esta definida y nose por que demonios me pasa eso, si hago lo mismo fuera del prototipo del objeto funciona perfectamente pero dentro del prototipo no alguien sabe por que?
__________________
Usuario registrado de Linux #288725

Última edición por epplestun; 06/05/2004 a las 01:06
  #2 (permalink)  
Antiguo 06/05/2004, 01:22
Avatar de epplestun  
Fecha de Ingreso: octubre-2001
Mensajes: 1.621
Antigüedad: 23 años
Puntos: 5
jeje ya funciona, lo puse asi:

Código:
setTimeout(func, 100);
Y listo
__________________
Usuario registrado de Linux #288725
  #3 (permalink)  
Antiguo 06/05/2004, 01:59
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 7 meses
Puntos: 1284
Hola epplestun:

No tengo claro lo que quieres, pero me parece que no se pueden declarar funciones dentro de funciones...

Tal vez quieras algo como esto:

Código PHP:
<html>
<
head>
<
script type="text/javascript">

function 
objeto() {
}

objeto.prototype.load = function() {
    if(!
document.all)
        
alert("OK Mozilla");
    else
        
alert("OK Internet Explorer");
}

function 
ini()    {
objeto = new objeto();
objeto.load();
}
</script>
</head>
<body onload="ini();">
</body>
</html> 
Saludos
  #4 (permalink)  
Antiguo 06/05/2004, 02:24
Avatar de epplestun  
Fecha de Ingreso: octubre-2001
Mensajes: 1.621
Antigüedad: 23 años
Puntos: 5
jejesi se puede de hecho ya esta funcionando
__________________
Usuario registrado de Linux #288725
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:48.