jquery获取匹配数据属性名称的所有元素

说我有一些具有以下数据属性的元素:

 

我想向他们所有人发一个事件,怎么办呢?

我尝试了一些东西,但无法让它发挥作用。

我的最新尝试是:

 $('data-my-key').click(... 

 $(document).find('data-my-key').click(... 

您可以使用属性选择器:

 $('[data-my-key]').click(... 

但请注意,jQuery将DOM加载后添加的data属性存储在其内部缓存中,而不是作为元素的属性,因此选择器不适用于那些。 在这种情况下,您需要使用filter

 $(document).children().filter(function() { return $(this).data('my-key'); }).click(...; 

您可以使用has属性选择器并提供属性名称。

 $('[data-my-key]').click...