Javascript AngularJS路由在IE7中不起作用
根据教程,我一直在我的应用程序中实现路由 我无法让我的版本在IE7中运行,在花了一段时间试图找出我错过了什么/做错了什么之后,我发现这个示例不起作用Javascript AngularJS路由在IE7中不起作用,javascript,internet-explorer-7,angularjs,Javascript,Internet Explorer 7,Angularjs,根据教程,我一直在我的应用程序中实现路由 我无法让我的版本在IE7中运行,在花了一段时间试图找出我错过了什么/做错了什么之后,我发现这个示例不起作用 有人知道如何让它工作吗?好吧,我也有同样的问题,所以我开始了悬赏,但在那之后我找到了工作解决方案(至少对我来说): 使用HTML5垫片 使用JSON2.js 将所有这些属性添加到html节点: class=“ng app:myapp”id=“ng app”ng app=“myapp”xmlns:ng=”http://angularjs.org
有人知道如何让它工作吗?好吧,我也有同样的问题,所以我开始了悬赏,但在那之后我找到了工作解决方案(至少对我来说):
- 使用HTML5垫片
- 使用JSON2.js
- 将所有这些属性添加到html节点: class=“ng app:myapp”id=“ng app”ng app=“myapp”xmlns:ng=”http://angularjs.org"
<!DOCTYPE html>
<html lang="en" class="ng-app:myapp" id="ng-app" ng-app="myapp" xmlns:ng="http://angularjs.org">
<head>
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<!--[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>
<![endif]-->
<!--[if lt IE 8]>
<script src="js/json2.js"></script>
<![endif]-->
</head>
<body>
<div ng-view></div>
</body>
</html>
不确定这是否是原因,但根据常见问题解答,AngularJS仅在IE8+上测试。您也可以查看文档,其中详细描述了这里的所有内容:@Flek我没有使用自定义标记名,也尝试了注释中提到的位,但ie指南中没有任何帮助我们没有在IE7上进行测试,但我们听说有人能够在IE7中运行角度代码。@MiskoHevery哈哈。。“我们听说过人”。。。他们来自阴暗的地方吗?做黑暗的事情?我很想看看这部作品,因为我怀疑伏都教。为什么id=“ng app”必须在html标签上?我需要把它移到儿童组,这不可能吗?@Neil这是可能的。您可以为此选择任何div。Angular将控制该div中的内容。如果您希望Angular覆盖整个页面,您也可以在html标记处使用该指令,但仍然无法使路由正常工作。你能发布完整的代码吗?如果有人在IE7中使用路由,那么提供完整的HTML/JS样板会有很大帮助。(上述示例代码中甚至不包括角度)。目前我的应用程序在IE 7中运行,除了路由似乎总是退回到$routeProvider配置的部分。类似$routeChangeStart的事件也被触发。我已经在IE7中设置了路由!看看我的分叉回购协议,我已经添加了修复。现在它甚至可以在IE6上运行(就我测试的情况而言)。当然,它仍然适用于所有现代浏览器(我希望如此)。除了adrien的答案中的建议之外,还需要在IE7上实现(希望)功能齐全的angular.js。