这是我的代码:
$(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
}
感谢您的帮助!
答案 0 :(得分:4)
如果你不介意使用匿名函数作为处理程序,你可以用旧学校方式完成:
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);
}
答案 1 :(得分:1)
您可以使用jQuery的bind方法: -
$(document).ready(function(){
$('#yourdropboxid').bind("dragenter", { foo: 'bar' }, somethingHappens);
});
function somethingHappens(event) {
alert(event.data.foo); // alerts 'bar'
}