【问题标题】:WebComponents Support in IE 11 - PolyFillsIE 11 中的 WebComponents 支持 - PolyFills
【发布时间】:2017-09-05 18:12:36
【问题描述】:

我有一个在 chrome 中工作的 Web 组件。我正试图让它出现在 IE 11 中。

我在我的主索引页面中添加了这一行:

<script type="text/javascript" src="app/shared/headerComponent/webcomponents-lite.js"></script>

我已将文件复制到所述目录。重建和部署网站后,在 IE 中看不到 Web 组件,在 Chrome 中显示正常。

我错过了什么吗?

2017 年 9 月 6 日更新

我现在收到此错误:

文件:webcomponents-lite.js,行:137,列:460 无法获取未定义或空引用的属性“documentElement”

行是这样的:

var a=this.ownerDocument;if(a&&a.contains&&a.contains(this)||(a=a.documentElement)&&

所以,看起来 polyfill 正在加载但没有正确执行。另外,我在连接和断开的回调中放入了一些 console.log,它们也没有被调用。

【问题讨论】:

  • 控制台弹出任何错误?
  • F12ing,我在控制台中没有看到任何错误。如果我查看 DOM,与 Chrome 中呈现的 DOM 相比,它看起来不完整。
  • 你可以尝试使用完整的 webcomponent JS 库吗?
  • 是的,让我试试,谢谢
  • 解决了您的问题吗?

标签: javascript google-web-component


【解决方案1】:

我添加了这些 polyfill(s)/库:

<script type="text/javascript" src="app/shared/headerComponent/webcomponents-lite.js"></script>
<script type="text/javascript" src="app/shared/headerComponent/custom-elements.min.js"></script>

此外,位置也会有所不同。我把这些放在头标签后面。由于需要进行 DOM 操作,因此主体无法正常工作。

我添加了 custom-elements.min.js,因为我们也使用了自定义元素的 v1 规范。

此后,Web 组件在 IE 11 中可见。

【讨论】:

  • 恭喜并感谢您更新此主题!点赞!
  • 你可以添加一个http链接而不是从你的本地目录中引用它
  • 你能提供polyfills的来源吗?
猜你喜欢
  • 2021-05-29
  • 1970-01-01
  • 2016-11-19
  • 1970-01-01
  • 1970-01-01
  • 2019-02-15
  • 2022-01-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多