Event.stop() en Prototype

Mi última pelea con Prototype ha estado protagonizada por los eventos. Tenía que conseguir capturar el evento de scroll sobre un div y después de hacer algunas cosas cancelar el comportamiento por defecto del evento y evitar la propagación al scroll general de la página.

Al final descubrí la función Event.stop() de Prototype. En la documentación dice lo siguiente:

Llamándola en un evento, para la propagación y previene el comportamiento por defecto.

Su uso es simple. Veamos un ejemplo.

  1. $(‘elemento’).observe(‘evento’, function(e){
  2.   otroComportamiento();
  3.   //esto detiene el comportamiento por defecto y evita la propagacion
  4.   e.stop();
  5. });

Aquí tenéis una página con un par de ejemplos. Podéis ver el ejemplo viendo el código fuente de la página.

  • El primer formulario mostrará un alert() con el valor
  • El segundo formulario hará una petición GET (evidentemente sin ningún efecto) sobre la misma página
  • El primer párrafo con scroll ignora el uso de la rueda del ratón
  • El segundo párrafo funciona igual que siempre :)

No hay posts relacionados.

Tags: , ,

2 comentarios en “Event.stop() en Prototype”

  1. Bitacoras.com Ha dicho:

    Información Bitacoras.com…

    Si lo deseas, puedes hacer click para valorar este post en Bitacoras.com. Gracias….

  2. Antonella Ha dicho:

    hola…muy interesante tu blog aunq yo soy medio analfabeta cuando de software y programación se trata…
    voy al grano: ¿cómo se crea un sitemap? (la explicación de blogger no es buena o yo soy un desastre).
    gracias :D