El navegador desencadena muchos eventos. Una lista completa está disponible en MDN, pero aquí están algunos de los tipos de eventos más comunes y los nombres de evento:
  • eventos del ratón (MouseEvent): mousedown, mouseup, click, dblclick, mousemove, mouseover, mousewheel, mouseout, contextmenu
  • eventos táctiles (TouchEvent): touchstart, touchmove, touchend, touchcancel
  • eventos del teclado (KeyboardEvent): keydown, keypress, keyup
  • eventos de formularios: focus, blur, change, submit
  • eventos de la ventana: scroll, resize, hashchange, load, unload
Ten en cuenta que algunos eventos son específicos de cada dispositivo. Los eventos táctiles solo se desencadenan en dispositivos habilitados para tacto como smartphones y computadoras portátiles con pantalla táctil. Los eventos del ratón se desencadenan en la mayoría de los navegadores, pero a veces son más lentos que los eventos táctiles en smartphones. El evento "mouseover" no se desencadena en todos los smartphones, ya que no hay manera de pasar el puntero encima de la pantalla sin tocarla.
Algunos desarrolladores añaden detectores tanto para los eventos táctiles como para los del ratón, para que su interfaz responda rápidamente a través de todos los dispositivos, otros desarrolladores usan bibliotecas como FastClick que se da cuenta automáticamente de que eventos detectar en cada dispositivo (eso es lo que hacemos aquí en Khan Academy). Como apenas vas empezando, lo más fácil de hacer es detectar los eventos del ratón, porque esos son los más universales.