将函数传递给 jquery On 事件处理程序

Posted

技术标签:

【中文标题】将函数传递给 jquery On 事件处理程序【英文标题】:Passing a function to the jquery On event handler 【发布时间】:2016-06-23 07:35:05 【问题描述】:

这行得通:

$(".logo").click(doSomething)

这不是:

$('.popular').on '.logo', 'click', doSomething

我需要后者,因为一些.logo 元素是在页面加载完成后使用 AJAX 加载的。

我能做些什么来解决它?

【问题讨论】:

一方面,将topServiceClicked 重命名为doSomething(并确保.logo 会出现在.popular 中的某个位置)。此外,参数顺序是错误的:.on(eventnames, selector, handler),除非您期望在 <click> 元素上出现名为 .logo 的事件。 :) $('.popular').on('click', '.logo', topServiceClicked/doSomething) 我忘记重命名函数了。已编辑。 @Thanks Rayon 如果你留下你的答案我会接受它 【参考方案1】:

你可以写

$('.popular').on('click','.logo', function() 
// do something
 topServiceClicked(););

【讨论】:

以上是关于将函数传递给 jquery On 事件处理程序的主要内容,如果未能解决你的问题,请参考以下文章

将参数传递给更高级别的事件处理程序

如何将事件和其他参数传递给单击处理程序

如何将自定义参数传递给事件处理程序

ReactJS V16如何将父函数传递给孙事件处理程序[重复]

将多个参数传递给 React 中的事件处理程序

将额外参数传递给事件处理程序?