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"); }