jQuery(文档).on('click.classname'.......)?

jQuery(document).on('click.classname'.......)?

我正在阅读 MaterializeCSS 的 js 文件,在它的 "cards.js" 文件中,有这些行:

$(document).on('click.card', '.card', function (e) {
    //something
});

我对jQuery的.on()函数并不陌生,但我从来没有将自定义事件作为第一个参数。我不明白的是似乎没有地方定义这个自定义事件 click.card(如果它是一个自定义事件),因为我只加载这个 card.js 和另一个 velocity.min.js 文件除了 jQuery 之外的 MaterializeCSS 包,我搜索 velocity.min.js 没有与此事件相关的内容。在我看来,自定义事件是这种模式:original event.classname,但我尝试用其他 class 名称替换 card 但它没有用。

我试图查找有关如何定义自定义事件的更多信息,但找不到任何有用的信息。

我的问题是如何找到这个自定义事件的定义位置。

这不是自定义事件,这是 DOM event with a namespace:

click 是 DOM 事件,card 是事件命名空间。

如果您在同一个元素上有多个处理程序,这可以帮助您辨别它们。您可以仅删除此侦听器(并保留所有其他 click 个侦听器):

$(document).off('click.card');

您可以使用 $('...').trigger:

手动触发它们
$('.card').trigger('click.card'); // only triggers this specific click listener, not the others

You can find out more about event namespaces here.