对象不支持从 iframe 调用的 MS Edge 中的 属性 或方法 'slideToggle'

Object doesn't support property or method 'slideToggle' in MS Edge called from an iframe

我正在尝试使用来自 iframe 的 "main-nav" id slideToggle div:

<div id="top">
  <div id="titlearea">
    <iframe id="customnavbar" src="navbar/navbar.html">..</iframe>
  </div>
  <div id="main-nav">...</div>
</div>

但我收到错误消息:0:Object doesn't support property or method 'slideToggle'

我正在为 a.dropdown-toggle link:

使用这个 onClick 事件处理程序
$(function(){
  $("a.dropdown-toggle").on("click", function(){
    $("#main-nav", window.parent.document).slideToggle(300);
  });
});

我正在 Microsoft Edge 44.18362.267.0、Microsoft EdgeHTML 18.18362 中进行测试。 在我的脚本附加 onClick 事件处理程序之前,我正在加载 jQuery 库。

我在 Edge 控制台中尝试 $("#main-nav", window.parent.document).slideToggle(300);,它工作正常。

任何想法可能是这里的问题?谢谢。

编辑

将我的代码推送到 github 后,我在 chrome 中对其进行了测试并得到了这个错误:

Uncaught TypeError: $(...).slideToggle is not a function
    at HTMLAnchorElement.myEventHandler (navbar.html:48)
    at HTMLAnchorElement.dispatch (jquery-3.3.1.slim.min.js:2)
    at HTMLAnchorElement.v.handle (jquery-3.3.1.slim.min.js:2)
myEventHandler @ navbar.html:48
dispatch @ jquery-3.3.1.slim.min.js:2
v.handle @ jquery-3.3.1.slim.min.js:2

解决方案

然后我发现了这个

问题在于包含 jQuery 的 slim minified 版本,将此更改为仅 minified 版本有帮助。

描述了解决方案

问题在于包含 jQuery 的 slim minified 版本,将其更改为仅 minified 版本即可解决问题。