【问题标题】:IE eventDispatch() SCRIPT87: Invalid argument. ERRORIE eventDispatch() SCRIPT87:参数无效。错误
【发布时间】:2016-09-23 11:52:18
【问题描述】:

我需要通过自定义事件在 2 个单独的窗口后面发送数据。 我使用来自MDN:CustomEvent() 的 Polifill 创建 CustomEvent 对象。 所以我的代码看起来:

var chatwindow = window.open(chatRootURL + "chat_window.jsp", "chat", window_options, true);
var event = new CustomEvent("onmessagein", {
    detail: data,
    bubbles: true,
    cancelable: false
});
chatwindow.dispatchEvent(event);

问题是我在 IE9 中遇到错误:

SCRIPT87: Invalid argument.

在最后一行。在 Chrome 和 Firefox 中测试了我的代码 - 有效。

当我这样做时:

window.dispatchEvent(event);

事件触发到当前窗口对象。但我想把它发射到另一个窗口。 我也尝试在单独的窗口上触发正常事件(点击)并得到同样的错误。

有可能吗?谢谢。 如果没有,请建议另一个如何做到这一点

【问题讨论】:

  • 对不起。标题是错误的 - dispatchEvent() 应该是。
  • 请使用编辑功能

标签: javascript internet-explorer-9


【解决方案1】:

答案是为此使用 jQuery。 在网络中找到的这段代码运行良好:

href_window.$(href_window.document).trigger(customEvent);

但不是原生 javascript

【讨论】:

  • 问题是关于 vanilla JS 而不是 jQuery。
猜你喜欢
  • 2012-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-13
  • 1970-01-01
相关资源
最近更新 更多