2011-09-02 34 views
5

我想在我的J-Query网站中使用自定义事件。现在我不确定哪一个是触发与此活动相关的所有元素的自定义事件的最佳方式。如何在所有元素上触发事件

一个例子可能更这里澄清:我基本上可以用

$('#id').trigger('customevent'); 

我不想触发元素必须知道附加到事件的所有元素。所以我可以使用

$('*').trigger('customevent'); 

这将希望做我想做的事情。但是我担心这种方式有一些性能问题。

我想到的另一种方法是使用一个类。附加到事件的所有元素都可以将此类添加到自己。然后我可以使用这个类作为选择器。然而,所有这些闻起来都像解决方法。

我真的很希望有人知道通常的方法来解决我的问题。

+0

就发现自己的答案: $ .event.trigger( '自定义事件'); 但我不能回答我的问题。令人怀疑的限制... –

+0

我认为你必须等待几个小时......但你可以添加你的答案。 *编辑:*其实它是重复的。 –

+0

[jQuery事件触发所有侦听器]的可能重复(http://stackoverflow.com/questions/6860146/jquery-event-triggering-on-all-listeners) –

回答

7

刚刚发现我自己的答案(也就是现在的过时,见下面的评论):

$.event.trigger('customevent'); 
+1

这是未记录和不赞成使用:https://github.com/jquery/jquery/blob/935eb19d87063ec30b717b3d45368d3c73cb591d/jquery-migrate.js#L481 –

+1

不确定它是否是一个适当的downvote原因,因为一个函数已被弃用三年后完全有效。 –

+1

感谢您编辑您的答案。在此之前,这是不正确的(不管它在当时是否正确),因此是downvote。我已经删除了downvote。 –

相关问题