Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/03/2008, 03:23
arathael
 
Fecha de Ingreso: noviembre-2007
Mensajes: 7
Antigüedad: 17 años
Puntos: 1
Pregunta Disparar un evento asignado con Event.observe

Saludos banda...

Ya son 3 y media de la mañana y mi ardilla ya está bien dormida... espero que me puedan ayudar con esto..

Estoy desarrollando una aplicación web implementando Prototype 1.5.1 y tengo varios event observers asignados a varios botones..

Por ejemplo:

Código:
Event.observe('menu_1', 'click', function(event) {
     // algo
});
En teoría este modelo del asignación de observadores de evento es el aconsejado por el DOM... todos pasamos por el javascript obtrusivo y después por el no-obstrusivo pero asignando funciones a los eventos directamente... me agarró la maña de hacer esto bien y ya me atoré

Aquí la duda es esta: ¿Cómo puedo disparar programáticamente este evento?

Si hubiera asignado mi funcion de esta manera:

Código:
$(menu_1').onclick = function() {
    // algo
}
Bien podría hacer esto:

Código:
$('menu_1').onclick()
y se dispararía mi evento perfectamente... pero al haberlo asignado a un event listener no tengo la opción de llamarlo así pues la función onclick() NO EXISTE!!

Hasta donde me he informado (san Google), esto no puede hacerse debido a la distinta implementación del DOM en los navegadores (una vez más..) puesto que Internet Explorer simula el accionamiento del evento con fireEvent y Geckos lo simulan con dispatchEvent ... y mi ardilla murió entonces...

Si alguien tiene la respuesta le voy a agradecer muchísimo...

Gracias..