En javascript, ¿es una mala práctica adjuntar events personalizados al documento en sí?

Tengo una serie de modales bootstrap que contienen forms muy pequeñas (2 campos max). Debido a que son muy similares en lo que hacen, todos usan un plugin jQuery que escribí para save los formularios que contienen (el plugin hace otras cosas antes de save también, pero eso es irrelevante).

Estos modales están "embeddeds" en múltiples lugares. Quiero tener una manera fácil de determinar, desde otras partes del código, si se produjo un ahorro. Debido a que el ahorro se abstrae del código que estaría interesado en saber cuándo ocurre, estaba pensando en cambiar el complemento de guardado para desencadenar events personalizados vinculados al documento y luego escribir manejadores de events como document.on ('my-event-here' … cada vez que me interesa saber si ocurrió un ahorro.

¿Hay una mejor manera de hacer esto?

No lo consideraría una "mala práctica" per se, sin embargo, usaría el plugin para proporcionar esta funcionalidad. Por ejemplo

$("#selector").customPlugin( customOptions ); // initialize the plugin $.customPlugin.on("save", function(evt, data) { // event called on save, where data contains anything relevant }); //$.customPlugin.off("save", ...); 

Y usaría un elemento personalizado dentro del complemento para el administrador de events actual:

 var customElement = $("<div>"); // adding/removing a (new) callback customElement.on("save", saveCallback); customElement.off("save", saveCallback); // triggering an event customElement.trigger("save", data); 

Es una mejor práctica encapsular lo que necesite su complemento … dentro del complemento y no crear dependencies innecesarias; todo debería evolucionar alnetworkingedor de tu complemento.