2

我想将 foo = 1 之类的属性插入到按钮侦听器回调中的事件对象中,以便主体侦听器回调也可以获取它:

$(function() {

    $("button").click(function(e) {
        alert("first");    
        // attach foo to e
    });

    $("body").click(function(e) {
        alert("second");
        // e has foo
    });

});

jsfiddle:http: //jsfiddle.net/exSKF/1/

有任何想法吗?

4

1 回答 1

1

jQuery 似乎为事件流的每个阶段构建了一个新的事件包装器对象。originalEvent但是,您可以通过属性访问实际的事件对象。

所以使用

$("button").click(function(e) {
    e.originalEvent.foo = 1;
});
$("body").click(function(e) {
    alert(e.originalEvent.foo);
});

在 jsfiddle.net 上的演示

于 2013-10-03T00:22:01.277 回答