我在本教程后面的应用程序中实现了Routing
http://docs.angularjs.org/tutorial/step_07
我无法让我的版本在IE7中工作,并且花了一段时间试图弄清楚我错过了什么/做错了我注意到这个例子不起作用.
http://angular.github.com/angular-phonecat/step-7/app/
任何人都知道如何让这个工作?
我在这做错了什么?我已阅读IE兼容性指南,但未提及使用{{}}标记的数据绑定.这在其他浏览器上工作正常,但在IE(包括IE9)中失败.
HTML:
<html ng-app class="ng-app">
<head></head>
<body>
<div ng-controller="Controller">
<p>{{test}}</p>
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
JavaScript的:
function Controller($scope) {
$scope.test = "Hello world";
}
Run Code Online (Sandbox Code Playgroud)
我已经尝试添加兼容性指南中提到的步骤,但似乎没有解决它,除非我遗漏了一些明显的东西!
它应输出"Hello world",但在IE上输出{{test}}.
非常感谢.
我在Internet Explorer 7和8甚至9上加载我的应用程序时遇到问题.
我收到以下错误消息(控制台)
Uncaught TypeError: Cannot read property 'nodeName' of undefined
Run Code Online (Sandbox Code Playgroud)
在加载时,{{}}变量正在加载和消失.什么都没有呈现.
我把它添加到html标签:
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml" xmlns:ng="http://angularjs.org" id="ng-app" class="ng-app: myapp;">
Run Code Online (Sandbox Code Playgroud)
我在AngularUI框架中添加了ieshiv.js.
我补充道
<!--[if lt IE 8]>
<script src="files/js/json3.min.js"></script>
<![endif]-->
Run Code Online (Sandbox Code Playgroud)
(问题:这已经足够了,只是添加到我的头部或者我也必须修改我的代码吗?)
我还把这个添加到我的头部:
<!--[if lte IE 8]>
<script>
document.createElement('ng-include');
document.createElement('ng-pluralize');
document.createElement('ng-view');
document.createElement('slide');
document.createElement('carousel');
// Optionally these for CSS
document.createElement('ng:include');
document.createElement('ng:pluralize');
document.createElement('ng:view');
</script>
<![endif]-->
Run Code Online (Sandbox Code Playgroud)
它根本不起作用.没有加载变量,没有列表呈现,网站不工作.
Chrome,FF和Opera工作正常.
你有什么提示从哪里开始?
编辑1:
在paste.bin http://pastebin.com/z67qE9ME上链接到我的controller.js
编辑2:
这可能是js加载的顺序吗?
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.min.js"></script>
<!--[if lt IE 8]>
<script src="files/js/json3.min.js"></script>
<![endif]-->
<script src="files/js/angular.min.js"></script>
<script src="files/js/ui-bootstrap-tpls-0.1.0-SNAPSHOT.js"></script>
<script src="files/js/angular-ui.js"></script>
<script src="files/js/angular-resource.min.js"></script> …Run Code Online (Sandbox Code Playgroud) 问题:
我试图在引导模式窗格中加载一个Angular JS应用程序,它在Internet Explorer上显示奇怪的行为(我们已在IE9和8上测试过它).
我们发现我们遇到以下错误:
**'JSON'undefined**对象Errorundefined
SCRIPT5022: 10 $digest() iterations reached. Aborting!
Watchers fired in the last 5 iterations: [["fn: function $locationWatch() {
var oldUrl = $browser.url();
var currentReplace = $location.$$replace;
if (!changeCounter || oldUrl != $location.absUrl()) {
changeCounter++;
$rootScope.$evalAsync(function() {
if ($rootScope.$broadcast('$locationChangeStart', $location.absUrl(), oldUrl).
defaultPrevented) {
$location.$$parse(oldUrl);
} else {
$browser.url($location.absUrl(), currentReplace);
afterLocationChange(oldUrl);
}
});
}
$location.$$replace = false;
return changeCounter;
}; newVal: 7; oldVal: 6"],["fn: function $locationWatch() {
var oldUrl = $browser.url();
var currentReplace = $location.$$replace;
if (!changeCounter …Run Code Online (Sandbox Code Playgroud)