jquery – 触发自定义事件

我在jquery的ready函数中将一个自定义事件处理程序附加到body。 紧接着,我成功触发了自定义事件。

$(function(){ $("body").on("test", function(){ alert("test triggered"); } $("body").trigger("test"); } 

但是,当我在控制台中触发它时没有任何反应。 为什么?

首先,您有语法错误

 $(function(){ $("body").on("test", function(){ alert("test triggered"); }); < ---- Missing this $("body").trigger("test"); }); 

其次,你无法从控制台触发事件,如$(function() {}); 形成一个闭包 ,你将无法访问其中的任何方法

为了使它像您期望的那样工作,在您的脚本文件中放置一个调试点,然后尝试触发该事件。 它现在可用,因为事件在范围内。

看起来您的代码格式不正确。 检查调试控制台以确认。

你可以试试这个:

 $(function(){ $("body").on("test", function(){ alert("test triggered"); }); $("body").trigger("test"); }