window.addEventListener('message')是否会覆盖其他侦听器?

Chr*_*son 10 javascript iframe postmessage

我有一些与iframe通信的代码.postMessage(),这意味着它需要添加一个监听器message来接收来自iframe的通信.我正在使用通常的代码:

window.addEventListener('message', processMessage, false);
Run Code Online (Sandbox Code Playgroud)

此代码客户端的页面,有一堆关于它的其他东西上运行:分析,社交按钮,等等,等等,当我加了我注意到console.logprocessMessage函数从IFRAME调试通信,这是捡了很多其他来自第三方插件的流量也使用.postMessage.

忽略它们不是问题,因为我正在寻找来自iframe的非常具体的消息,但是我想确保我不会覆盖任何应该从FB脚本中获取这些消息的侦听器等等.我之前遇到过多个window.onresize事件覆盖彼此的问题.这是消息的事件监听器的问题吗?

Wil*_* P. 14

addEventListener不会覆盖现有的事件侦听器,它只是添加一个新方法,如方法名称所暗示的那样.必须使用该removeEventListener方法删除现有侦听器.

addEventListener信息

removeEventListener信息