示例代码如下:

$('a').mousedown(function(event)
   {
            event.ABC = true;

   });

$(window).mousedown(function(event)
    {
        console.log("event.ABC:",event.ABC);
         //outputs "undefined "

        if( event.ABC)
        {
          // do sth
        }
        else
        {
            //let it go
        }


    });

最佳答案

尽管我不确定您到底想做什么,但我猜测如果您不必弄乱事件对象,那会容易得多。只需在单击<a>时设置一个标志变量即可:

var eventABC = false;

$('a').mousedown(function() {
        eventABC = true;
});

$(window).mousedown(function() {
    console.log("eventABC:", eventABC);
    //outputs true if <a> clicked, false otherwise

    if(eventABC) {
      // do sth
    } else {
        //let it go
    }

    eventABC = false;
});

但是您可以在jQuery中触发事件。像这样:
$('a').click(function() {
    $(window).trigger("eventABC", ['CustomProperty1', 'CustomProperty2']);
    return false;
});

$(window).bind('eventABC', function(event, param1, param2) {
    alert("eventABC triggered: " + param1);
});

09-12 01:34