Foros del Web » Programando para Internet » Javascript »

¿como pasar nombre de funcion como parametro?

Estas en el tema de ¿como pasar nombre de funcion como parametro? en el foro de Javascript en Foros del Web. Hola a todos, Estoy empezando con javascript y me surge el siguiente problema, quiero hacer una funcion que al pasarle una serie de parametros (entre ...
  #1 (permalink)  
Antiguo 07/12/2005, 07:23
Avatar de ibme74  
Fecha de Ingreso: marzo-2004
Mensajes: 81
Antigüedad: 20 años, 9 meses
Puntos: 0
¿como pasar nombre de funcion como parametro?

Hola a todos,

Estoy empezando con javascript y me surge el siguiente problema, quiero hacer
una funcion que al pasarle una serie de parametros (entre ellos el nombre de una funcion) invoque la funcion cuyo nombre le paso como parametro. He realizado el siguiente codigo:

Código HTML:
<html>
<head>
<script langauge="javascript">

function visibilidad(d,m)
{ 
  var d;
  var m;
	
  document.getElementById(d).style.visibility = m;

}

function manda(l,n,a) {
var l;
var n;
var a;
trozos = l.split (" "); // el separador es el espacio
trozos2 = n.split (" "); // el separador es el espacio
for (var i=0; i < a; i++) {

visibilidad(trozos[i],trozos2[i]);

}
}


</script>
</head>
<body onLoad='manda("uno dos tres cuatro cinco","visible visible visible hidden visible","5");'>
<div id="uno" style="background-color: red;width:50px;height:50px;visibility:hidden;">uno</div>
<div id="dos" style="background-color: blue;width:50px;height:50px;visibility:hidden;">uno</div>
<div id="tres" style="background-color: maroon;width:50px;height:50px;visibility:hidden;">uno</div>
<div id="cuatro" style="background-color: silver;width:50px;height:50px;visibility:hidden;">uno</div>
<div id="cinco" style="background-color:black;width:50px;height:50px;visibility:hidden;">uno</div>
</body>
</html> 
La funcion manda recibe los parametros l, n y a . l es una cadena de texto
con el nombre de los div que luego convierto en array al igual que n, a es el numero de componentes del array.

Me gustaria poder pasar por parametro el nombre de la funcion que quiero que realice en este caso visibilidad, lo he intado como una variable mas pero no funciona.

Alquien sabe como podria hacer esto.

Gracias.
  #2 (permalink)  
Antiguo 07/12/2005, 07:33
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años, 7 meses
Puntos: 5
ejecute tu codigo y no entiendo la verdad que quieres decir con mandar como parametro el nombre de la función....
explicate mejor para ver si te puedo ayudar
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #3 (permalink)  
Antiguo 07/12/2005, 07:41
Avatar de ibme74  
Fecha de Ingreso: marzo-2004
Mensajes: 81
Antigüedad: 20 años, 9 meses
Puntos: 0
Gracias por responder Saruman.

Seria algo asi, a la funcion manda le pasaria ademas de todos estos parametros el nombre de la funcion:

Código HTML:
onLoad='manda("uno dos tres cuatro cinco","visible visible visible hidden visible","5","visibilidad");'
y la funcion manda quedaria asi:

Código HTML:
function manda(l,n,a,k) {
var l;
var n;
var a;
var k;
trozos = l.split (" "); // el separador es el espacio
trozos2 = n.split (" "); // el separador es el espacio
for (var i=0; i < a; i++) {
k(trozos[i],trozos2[i]);


}
}
pero esto no funciona.
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 19:38.