oyente de events vacío: ¿esta bien?

Algunos antecedentes rápidos

Estoy creando una aplicación de iOS que utiliza vistas web html en algunas áreas. Quería asegurarme de que los botones html en esas páginas se vieran y se sintieran lo más parecidos posible a los botones iOS. Para lograr esto, quería un estado de toque por lo que el button html se presionó cuando se tocó. Ahora en HTML es fácil. Simplemente establece un estilo para: active o: hover o lo que sea. De hecho, ya había definido esto. En iOS, sin embargo, esos estados no se activan, al less normalmente. Así que mi objective era escribir un pequeño script que agregue una class al button para cambiar su apariencia en el comienzo.

La cuestión

Sin embargo, resultó que no necesitaba complicarme … por puro crash ejecuté una testing con el siguiente código:

document.addEventListener('touchstart', function(event) { console.log("test"); }, true); 

Estoy bastante verde con javascript & jQuery, así que lo único que tenía pensado hacer era verificar mi syntax y asegurarme de que se activara el eventoListener cuando toqué el button. Para mi sorpresa, el button: estados activos en el css disparados (así como los estados de desplazamiento). Ese código … resolvió mi problema!

Mi pregunta

Entonces, aquí está mi pregunta: ¿el código anterior es válido? Quiero decir, ¿es malo hacer esto? Es como si el eventListener vacío acaba de desencadenar el comportamiento que ya ofrecen los browseres de escritorio. ¿Hay algún problema con el uso de este método? Soy verde, pero no quiero retomar malos hábitos. Si esta es una mala forma de codificar, no quiero utilizarlo.

Gracias por cualquier idea que ustedes puedan darme a esto.

Personalmente, no creo que haya nada malo con los oyentes de events vacíos (excepto la sobrecarga de una llamada de function, que de todos modos suena insignificante aquí). Sugiero que aproveche la function noop de jQuery aunque si debe agregar un oyente de events pero no hacer nada:

 $(document).on('touchstart', $.noop); // or document.addEventListener('touchstart', $.noop);