这是我的代码:
$(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);
}
您可以使用jQuery的绑定方法:-
$(document).ready(function(){
$('#yourdropboxid').bind("dragenter", { foo: 'bar' }, somethingHappens);
});
function somethingHappens(event) {
alert(event.data.foo); // alerts 'bar'
}