这是我的代码:

$(document).ready(function(){
dropbox.addEventListener("dragenter", somethingHappens, false);
});

function somethingHappens(evt) {
    // code here
}

附加事件侦听器时如何将数据传递给somethingHappens()函数?那可能吗?我正在寻找可以做的事情:
function somethingHappens(evt,dataItem1,dataItem2) {
    // code here, I need to use evt here
}

谢谢您的帮助!

最佳答案

如果您不介意使用匿名函数作为处理程序,则可以采用传统的方法:

var data = { foo: 'bar' };

dropbox.addEventListener("dragenter", function(evt) {
    somethingHappens.call(this, evt, data);
}, false);

function somethingHappens(evt, data) {
    console.log(data);
}

但我也很确定您可以为此使用jQuery事件:
$(dropbox).bind( 'dragenter', { foo: 'bar' }, somethingHappens );

function somethingHappens(evt) {
    console.log(evt.data);
}

09-08 08:04