jQuery事件:为现有的回调处理程序添加一个回调处理程序

在网页上是带有click和/或按键处理程序的元素。 如果我添加一个新的,它将在它们之后执行。 我需要一种方法来添加一个新的回调,它被添加到事件处理程序列表中,以便事先执行它。 如何用jQuery实现这一点?

更新

为什么我不能只使用jQuery的unbind方法? 我正在将jQuery代码注入任何网页,因此我不知道是否使用了任何JavaScript框架。 我需要一种通用的方法来检测事件处理程序并预先安排。 (在你问之前,我正在构建一个“记录器”应用程序,它跟踪用户存储它们的操作并在以后执行它们。)

更新2

我只使用Firefox,不需要IE兼容性。 我必须等待页面完全加载,然后我的jQuery脚本将被调用。

我认为如果你使用事件捕获(在事件到达元素之前调用祖先的处理程序)而不是冒泡(child – > ancestors),这可能会有效。 这是一种在达到目标元素之前拦截事件的方法。

大多数事件处理程序都使用事件冒泡。 根据w3c,事件首先被捕获,然后从目标再次冒泡。 因此,如果您使用捕获将事件绑定到文档,则将首先对页面上的每个元素执行该事件。

http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113/events.html#Events-flow-capture

您将使用以下方法绑定处理程序:(第三个参数是您是否要使用事件捕获)

 document.body.addEventListener('click',handler,true) 

在执行单击元素的事件处理程序之前,将对元素中的每次单击执行此操作。 我不确定是否支持浏览器。