Foros del Web » Programando para Internet » Javascript »

Sintaxis para funciones y eventos

Estas en el tema de Sintaxis para funciones y eventos en el foro de Javascript en Foros del Web. Hola gente. Para crear una funcion siempre lo hice de esta manera funcion nombre_funcion(parametros) { codigo } pero hay lugares donde encuentro las funciones de ...
  #1 (permalink)  
Antiguo 23/01/2006, 14:52
 
Fecha de Ingreso: noviembre-2003
Ubicación: Paraguay
Mensajes: 382
Antigüedad: 20 años, 5 meses
Puntos: 4
Mensaje Sintaxis para funciones y eventos

Hola gente.

Para crear una funcion siempre lo hice de esta manera

funcion nombre_funcion(parametros)
{
codigo
}


pero hay lugares donde encuentro las funciones de esta manera

nombre_funcion = function (parametros)
{
codigo
}


Esto seria lo mismo?


Por otro lado. Creo que hay otra sintaxis para llamar a los eventos tambier. los eventos generalmente los hago asi <a href="#" onClick="nombre_funcion"> pero hay lugares donde veo que los eventos no son llamados de esta manera porque no existe ninguna llamada. Hay otra manera de llamar a los eventos? desde una pagina .js externa o algo asi? Tendria que ver algo la palabra prototype?
  #2 (permalink)  
Antiguo 23/01/2006, 15:07
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años
Puntos: 5
por lo general a mi no me gusta poner en el href mi url, me gusta trabajarla directamente en el onclick, practicamente en todo, en a, img, table, etc

ejemplo:

Código:
 
<img src="imagen.ext" onclick="window.open()" style="cursor:pointer;">
Código:
 
<a href="javascript:void(0);" onclick="nombre_funcion()">mi link</a>
etc

con respecto a las funciones, depende el uso de cada una....

saludos
__________________
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 24/01/2006, 06:10
 
Fecha de Ingreso: noviembre-2003
Ubicación: Paraguay
Mensajes: 382
Antigüedad: 20 años, 5 meses
Puntos: 4
Pero con respecto a esto window.opener.MyFuncion('param1'); ?

Aqui se usa una funcion con un evento parece o que seria esto?
  #4 (permalink)  
Antiguo 24/01/2006, 08:04
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años
Puntos: 5
Cita:
Iniciado por micayael
Pero con respecto a esto window.opener.MyFuncion('param1'); ?

Aqui se usa una funcion con un evento parece o que seria esto?
allí lo que pasa es que hay dos ventanas: la madre y la hija (pop-up).
la madre tiene una funcion llamada MyFunction()... y en la ventana hija la está invocando... lo cual funciona perfectamente.. comprendes? o sea, que desde la hija le está mandando cosas a la madre.... me he explicado bien?

saludos
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #5 (permalink)  
Antiguo 24/01/2006, 08:26
 
Fecha de Ingreso: noviembre-2003
Ubicación: Paraguay
Mensajes: 382
Antigüedad: 20 años, 5 meses
Puntos: 4
Ok lo entiendo.

Y no hay otra forma de detectar algun evento de una pagina que no sea dentro de la etiqueta.

Por ejemplo tengo una etiqueta <a> y desde otro lugar hago un getElementsById o que se yo y detecto cuando ocurra el evento.

En ActionScript para flash por ejemplo se puede no se si lo conoces
  #6 (permalink)  
Antiguo 24/01/2006, 08:35
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años
Puntos: 5
mmm la verdad no conozco... esa ta medio dificil... jejejeje
dejame investigar... si otro sabe.. bienvenido

saludos
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #7 (permalink)  
Antiguo 24/01/2006, 10:49
 
Fecha de Ingreso: noviembre-2003
Ubicación: Paraguay
Mensajes: 382
Antigüedad: 20 años, 5 meses
Puntos: 4
Doy un ejemplo.

En ActionScript por ejemplo cuando tengo un boton en flash lo puedo poner dentro del boton al evento

on(click)
{
codigo
}


o tambien se puede hacer algo asi:

nombreDelBoton.onPress = function ()
{
codigo a ejecutar
}


Esto es llamado un metodo de controlador de eventos o algo asi.

De esta manera puedo obtener el momento del evento sin que este puedo en la etiqueta <input type="button">

Eso es lo que necesito saber si existe en javaScript para poder obtener los eventos de un objeto en un archivo .js externo por ejemplo.

Por lo menos con este ejemplo vamos a ver si ayudo un poco mas.
  #8 (permalink)  
Antiguo 24/01/2006, 10:57
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años
Puntos: 5
bueno, exactament con los objetos no lo he hecho, pero por ejemplo con table, body, etc si lo he hecho y es igual a actionscript...

ejemplo:

window.onload = function() {
//tu codigo
}

saludos
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #9 (permalink)  
Antiguo 24/01/2006, 10:59
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola micayael

A ver si te sirve algo así:
Código PHP:
<html>
<
head>
<
script type="text/javascript">
function 
ini() {
  
document.getElementById('pepe').onclick = function() {
      
alert('Hola') }
}
</script>
</head>
<body onload="ini()">
<input type="button" id="pepe" />
</body>
</html> 
Saludos,
  #10 (permalink)  
Antiguo 24/01/2006, 11:18
 
Fecha de Ingreso: noviembre-2003
Ubicación: Paraguay
Mensajes: 382
Antigüedad: 20 años, 5 meses
Puntos: 4
Perfecto. Es eso lo que necesitaba saber.

Gracias Saruman y JavierB me dieron la solucion absoluta.

Me funciona perfecto hacer
document.getElementById('pepe').onclick = function()
{
alert('Hola') }
}

lo unico que no entiendo porque lo iguala a function() si lo que hace es detectar el evento.
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 14:21.