Ver Mensaje Individual
  #26 (permalink)  
Antiguo 08/04/2009, 02:57
venkman
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Método y/u objeto de origen

No sé qué es lo que intentas hacer con ese código, pero lo que realmente haces, no tiene sentido. En ninguno de los dos casos, ni con función ni sin ella.

Código javascript:
Ver original
  1. function testear(e){
  2.     // Guardamos en obj el elemento sobre el que se produjo el evento:
  3.     var obj=e.srcElement || e.target;
  4.     // Guardamos el nombre de ese elemento en una variable llamada objeto.
  5.     // Objeto es algo como "email".
  6.     var objeto = obj.name;
  7.     // Guardamos en una variable llamada evento el tipo de evento ocurrido
  8.     var evento = e.type;
  9.     // Ahora, a la variable objeto (que tenía de valor la cadena "email")
  10.     // le añadimos una propiedad llamada "evento" y le asignamos una
  11.     // función que escribe "hola" en el document.
  12.     // Es interesante notar que sólo asignamos esa función, no la llamamos
  13.     // ni nada. Y que se la asignamos a una variable llamada objeto,
  14.     // no a ningún elemento real del DOM ni nada similar.
  15.     // También es interesante notar que le añadimos una propiedad
  16.     // llamada "evento" así tal cual; no tiene ninguna relación
  17.     // con la variable evento anterior.
  18.     objeto.evento = function(){document.write("hola");};
  19.     // Salimos de la función, y las variables obj, objeto, evento se destruyen.
  20.     // Como no hemos hecho nada con ellas,
  21.     // la función no tiene ningún efecto, no hace nada.
  22. }

En el caso de poner objeto.evento = document.write("hola") lo único que cambia es que estamos llamando directamente a que escriba "hola" en el documento. Esto es casi peor que lo anterior, porque, por un lado seguimos sin asignar nada a objeto.evento (si es que realmente queremos asignarle algo) y por otra parte nos estamos cargando el document, sobreescribiéndolo con "hola".


Así que me pregunto, Dude--, ¿qué es lo que estás intentando hacer?