3

我试图在 IE8 中打开 AngularUI 网站(http://angular-ui.github.io/)。UI 未在 IE8 中正确呈现(在最新版本的 chrome/firefox 中工作正常)。这导致我搜索 AngularUI 模块的浏览器兼容性。小组中的讨论指出 AngularUI-bootstrap 模块不支持 IE8(https://groups.google.com/forum/#!topic/angular-ui/8L0739rxdes)但可以找到下面列出的其他模块的信息。UI-Utils UI-Modules NG-Grid UI-Router 所以问题是,这些模块与ie8兼容吗?如果是,是否希望在未来继续提供支持。

4

3 回答 3

21

如果您不使用自定义元素选项配置它们,许多 AngularUI 指令在 IE8 中都能正常工作。问题是 IE8 忽略了任何不是标准 HTML 的元素,这显然将这种方法从水中吹了出来。

改用属性方法。例如,而不是:

<tabset>
    <tab ng-repeat="tab in tabs" heading="{{tab.name}}"></tab>
</tabset>

利用:

<ul tabset>
    <li tab ng-repeat="tab in tabs" heading="{{tab.name}}"></li>
</ul>
于 2013-09-05T16:27:03.383 回答
3

或者,您可以使用如下脚本告诉 IE8 使用默认情况下未知的元素:

<script>
   document.createElement("tabset");
   document.createElement("tab");
   document.createElement("tab-heading");
</script>

这让 IE8 知道<tabset>和是<tab>有效<tab-heading>元素。

于 2015-02-19T07:28:39.873 回答
1

除了@Paul 的正确答案(顺便说一句应该被标记为答案)之外,这里是 Angular 团队的解释以及如何更正它们以在 IE8 Angular IE8 开发指南中工作。另外,应该注意的是,Angular 团队在 Angular 1.3 及更高版本的博客中正式放弃了对 IE8 的支持。因此,如果您需要支持 IE8,请不要使用 Angular 1.3+,也不要使用任何使用 1.3+ 的 Angular UI。

于 2014-06-10T18:26:02.240 回答