Ver Mensaje Individual
  #2 (permalink)  
Antiguo 22/11/2014, 02:24
Avatar de Alexis88
Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años, 1 mes
Puntos: 977
Respuesta: Evento onfocus solo una vez

Utiliza el método removeEventListener para desligar al evento del elemento en cuestión.

Código HTML:
Ver original
  1. <input type = "text" id = "foo" />

Código Javascript:
Ver original
  1. var input = document.querySelector("#foo");
  2.  
  3. input.addEventListener("focus", function(event){
  4.     alert("Solo verás este mensaje una vez.");
  5.     this.removeEventListener("focus", arguments.callee);
  6. }, false);

DEMO

Saludos

Edito: Antes de que me lo preguntes, la presencia de arguments.callee se debe a que la función que se ejecuta es anónima (no posee un nombre) y como lo que deseo es que ya no se ejecute dicha función al volver a dar el enfoque a la caja de texto, hago referencia a ella utilizando la propiedad en cuestión.
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Última edición por Alexis88; 22/11/2014 a las 02:47 Razón: Aclaración