通过chrome / javascript控制台触发匿名事件?
基于这个问题 ,我创建了一个自定义匿名事件监听器,如下所示:
function init() { console.log("Initiating widgets"); } window.addEventListener("widgetInit", init());
我可以使用$(window).trigger('widgetInit');
调用它$(window).trigger('widgetInit');
从代码中,但是如果我将其粘贴到控制台中,它只返回窗口对象。
有没有办法通过控制台模拟事件而不修改代码?
也许您可以尝试使用本机DOM方法:
window.dispatchEvent(new Event('widgetInit'));
看起来jQuery用于CustomEvent自己的事件系统。 如果您使用jQuery来监听事件,它将正常工作。
否则,他们(不太支持)创建CustomEvent的方式: https : //developer.mozilla.org/en-US/docs/Web/Guide/Events/Creating_and_triggering_events
我认为你的听众应该是:
window.addEventListener("widgetInit", init);
所以init
没有括号……
当您通过直接在控制台中键入jQuery元素时,此元素始终返回。 所以触发器有效…但我认为你的听众没有工作……