将事件对象传递给Jquery中的函数

时间:2013-02-12 16:25:18

标签: jquery function parameters

通常,我可以将事件传递给匿名Jquery函数,如下所示:

$(".click_me").on("click", function(e) {
  e.preventDefault();
});

现在假设我删除匿名函数但仍希望将事件传递给它:

function onClickMe(e){
  e.preventDefault();
}

$(".click_me").on("click", onClickMe(e));

不幸的是,这不能按预期工作。我收到这个错误:

ReferenceError: e is not defined

那么我怎样才能将事件传递给外部函数?

1 个答案:

答案 0 :(得分:15)

只需传递函数引用,jQuery将处理为您传递参数(总是将事件作为处理函数的第一个参数传递)。所以:

function onClickMe(e){
  e.preventDefault();
}

$(".click_me").on("click", onClickMe);