请参阅以下内容:
$('body').on('whyhellothere', function(){
console.log('done...');
});
$('body').triggerHandler('whyhellothere');
该代码段返回:
done...
如果我们颠倒顺序:
$('body').triggerHandler('whyhellothere');
$('body').on('whyhellothere', function(){
console.log('done...');
});
此代码段不返回任何内容。为什么会这样呢?
最佳答案
如果您在森林里大喊,然后我走了,我什么也听不到,对吗?
事件触发后,您正在注册事件处理程序。注册的处理程序只能侦听开始侦听后触发的事件。
这是简单的物理学:P