我在jQuery的ready
方法中附加一个自定义事件处理程序到body
。
之后,我立即trigger
自定义事件,但似乎没有发生。
$(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");
}