我在jQuery中开发模块化应用程序。 每个模块都有一个自定义事件的事件处理程序" Save_special"像这样:
$(document).on('save_special', function () {
bind_contact_save();
});
我希望在事件完成后触发一个函数。通常我会简单地使用回调,但是我的代码中有很多这样的事件处理程序,所以回调方法在这里是不可能的。任何人都有任何想法如何解决这个问题?
答案 0 :(得分:1)
您可以覆盖现有的保存功能并将回调添加到该功能中,因此您无需修改现有代码...
// keep a reference to the original save function
var _bind_contact_save = bind_contact_save;
// override the original function so this gets called instead
function bind_contact_save() {
// call the original function
_bind_contact_save();
callback();
}
调用bind_contact_save()
的代码中的任何地方现在都会触发也将触发回调函数的新版本。