Y si quieres tenerlo de forma general, es decir, ejecutar cualquier evento una sola vez en cualquier elemento (del mismo modo en el que se realiza con el método 
.one() de jQuery), puedes implementar esto:    
Código Javascript
:
Ver original- window.Element.prototype.one = function(event, callback){ 
-     this.addEventListener(event, this.call = function(){ 
-         callback(); 
-         this.removeEventListener(event, this.call, false); 
-     }, false);     
- }; 
-   
- document.querySelector("#id_elemento").one("click", function(){ 
-     alert("Solo verás este mensaje una vez."); 
- }); 
De este modo, aplicas este método a cualquier elemento del documento.  
DEMO 
Saludos