关于AngularJS ng的快速问题 - 包括部分具有HTML5节点结构的位置,即:标题,导航,页脚......
在我的标题中,我拥有使Angular在Internet Explorer 8及以下版本中运行良好的所有优点。
所有ng-view和ng-includes按预期工作。
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<!-- Internet Explorer AngularJS element creation -->
<!--[if lte IE 8]>
<script>
document.createElement('ng-include');
document.createElement('ng-pluralize');
document.createElement('ng-view');
document.createElement('ng:include');
document.createElement('ng:pluralize');
document.createElement('ng:view');
</script>
<script src="http://cdnjs.cloudfare.com/ajax/libs/json3/3.2.4/json3.min.js"></script>
<![endif]-->
问题是当partial有一个HTML5节点时。
假设:部分在部分中称为标题。
<ng-include src="'partials/header.partial.html'"></ng-include>
示例1(header.partial.html源代码 - 不在IE8中显示)
<header>
<h1>logo</h1>
</header>
示例2(header.partial.html源代码 - 在IE8中显示)
<div>
<h1>logo</h1>
</div>
我已经包含了角度以及html5垫片的require脚本。
如果我将部分内容移动到根文件,一切都很好。
思想?
答案 0 :(得分:4)
这似乎与问题#1381有关。简而言之,jqlite中的clone方法在它不理解的标记上放置了一个空名称空间,因此html5标记显示为<:header>
而不是<header>
。如果您使用完整版本的jquery,则可以解决此问题。或者你可以修补角度(见上面的问题)。似乎这个问题在github上有点死了,这里基于这篇文章的年龄。 Google群组(Problems with jQuery and ng:include in Internet Explorer)也存在相关问题。
答案 1 :(得分:0)
已经覆盖,现在AngularJS似乎已经放弃了支持IE8的1.3版本,他们也删除了部分文档。太糟糕= /
答案 2 :(得分:-1)
Angular JS指南http://docs.angularjs.org/guide/ie
中涵盖了这个确切的问题