Este foro ya no está activo, así que no puedes publicar nuevas preguntas ni responder a las preguntas existentes.

Duda con un apartado de JavaScript

12 de noviembre de 2015

Hola, que tal está todo por aquí, espero que bien.

Bueno, a mi me gustaría que me explicárais una cosa que no puedo entender de este artículo que pusisteis: obteniendo información del evento

No entiendo en este script...

function resalta(elEvento) {
  var evento = elEvento || window.event;
  switch(evento.type) {
    case 'mouseover':
      this.style.borderColor = 'black';
      break;
    case 'mouseout':
      this.style.borderColor = 'silver';
      break;
  }
}
 
window.onload = function() {
  document.getElementById("seccion").onmouseover = resalta;
  document.getElementById("seccion").onmouseout = resalta;
}
<div id="seccion" style="width:150px; height:60px; border:thin solid silver">
  Sección de contenidos...
</div>

Como es que la variable elEvento de golpe y porrazo adquiere absolutamente todas las propiedades del evento producido sin antes haberla primer declarado, y por ultimo habiéndole pasado un argumento a la hora de llamarla función en window.onload = function() {}

Gracias de antemano.


Respuestas

#1

La respuesta es sencilla pero no se si te va a gustar o te va a convencer: los navegadores crean "mágicamente" y automáticamente el objeto que representa al evento producido y lo pasan como el primer argumento del método que se encarga de responder al evento. Así que no tienes que hacer nada ni inicializar nada. Esta variable simplemente "aparece de la nada".

@javiereguiluz

12 noviembre 2015, 21:29
#2

Pues vaya pasada entonces xd. Entonces yo enlazo un elemento a una función, que tiene dos argumentos, declaro nada mas que el segundo, y el primero toma las propiedades de el evento producido en este momento ¿no?

@raultrysw

13 noviembre 2015, 10:00