我正在尝试使用 jQuery 的 .click 调用带有参数的函数,但我无法让它工作。
这就是我希望它的工作方式:
$('.leadtoscore').click(add_event('shot'));
调用
function add_event(event) { blah blah blah }
如果我不使用参数,它会起作用,如下所示:
$('.leadtoscore').click(add_event); function add_event() { blah blah blah }
但我需要能够将参数传递给我的add_event函数。
add_event
我该怎么做这个具体的事情?
我知道我可以使用.click(function() { blah },但我add_event从多个地方调用该函数并希望这样做。
.click(function() { blah }
为了彻底起见,我遇到了另一个解决方案,它是 jQuery click 事件处理程序 1.4.3 版本中引入的功能的一部分。
它允许您将数据映射传递给事件对象,该对象会自动通过 jQuery 作为第一个参数反馈给事件处理函数。数据映射将.click()作为第一个参数传递给函数,然后是事件处理函数。
.click()
这里有一些代码来说明我的意思:
// say your selector and click handler looks something like this... $("some selector").click({param1: "Hello", param2: "World"}, cool_function); // in your function, just grab the event object and go crazy... function cool_function(event){ alert(event.data.param1); alert(event.data.param2); }