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 に答える