我有一个刚刚开始的干净的 AngularJS 1.2.8 应用程序。路由不适用于 IE 8,但它适用于所有其他浏览器(包括 IE 9)。控制台中没有错误。 Angular 只是不会触发路由。
有人可以指出我正确的方向吗?我已经看过 Angular's IE 8 doc并按照指示无济于事。
HTML...
<!doctype html>
<html id="ng-app" data-ng-app="app">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta charset="utf-8">
<title>Learning Content Portal</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width">
<link rel="stylesheet" href="css/bootstrap.min.css">
<link rel="stylesheet" href="css/main.css">
</head>
<body>
<div class="container">
<!-- placeholder for views -->
<div data-ng-view></div>
</div> <!-- /container -->
<script src="js/vendor/jquery-1.10.1.min.js"></script>
<script src="js/vendor/json3.min.js"></script>
<script src="js/vendor/bootstrap.min.js"></script>
<script src="js/vendor/angular/angular.min.js"></script>
<script src="js/vendor/angular/angular-route.min.js"></script>
<script src="js/app.js"></script>
</body>
</html>
和 app.js ......
var app = angular.module('app', ['ngRoute']);
app.config(function ($routeProvider) {
$routeProvider
.when('/searchCourses', {
templateUrl: 'partials/searchCourses.html',
controller: 'controller_searchCourses'
})
.when('/editCourse', {
templateUrl: 'partials/editCourse.html',
controller: 'editCourseController'
})
.otherwise({ redirectTo: '/searchCourses' });
});
app.controller('controller_searchCourses', function ($scope) {
alert('test');
});
还有一个部分,但我认为这并不重要,因为它永远不会触发警报(或加载部分)。
<div class="container">
<div>
Course Count: {{courses.length}}
<ul>
<li data-ng-repeat="course in courses | orderBy:course.name">{{ course.name }}</li>
</ul>
</div>
<br />
<div>
Name: <input type="text" data-ng-model="newCourse.name" /><br />
Owner: <input type="text" data-ng-model="newCourse.owner" /><br />
Code: <input type="text" data-ng-model="newCourse.code" /><br />
Status: <input type="text" data-ng-model="newCourse.status" /><br />
<br />
<button class="btn btn-default" data-ng-click="addCourse()">Add New Course</button>
</div>
</div>
最佳答案
您没有在 html 中指定命名空间<html xmlns:ng="http://angularjs.org">
并且文档说这是必需的。
关于internet-explorer - 如何让 AngularJS 路由在 IE 8 上工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21146804/