为什么我的angular.js应用程序不适用于ie7?

时间:2013-05-16 10:02:47

标签: javascript html angularjs internet-explorer-7

我创建了一个angular.js应用程序,现在需要在IE 7及更高版本中运行。我的应用程序在其他浏览器上正常运行。

我一直在尝试插入id =“ng-app”,xmlns:ng,使用angular.bootstrap手动启动角度(文档,['myApp']),包括json3.js,......没有什么对我有用

我正在尝试在我的html上插入一些数据,以查看angular是否正在解析我的文档,但不是...

知道我的路线似乎工作很有趣(在我的应用中,你需要被记录以访问其他页面,如果我想继续使用domain.ext /#/ myRoute,我正确地重定向到domain.ext /#/)

这是我的实际index.html({{toto}}未解析且我的ng-view始终为空白):

<!DOCTYPE html>
<!--[if IE 8]>         <html class="no-js lt-ie9" lang="en" xmlns:ng="http://angularjs.org"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" xmlns:ng="http://angularjs.org"> <!--<![endif]-->
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width" />
    <title>My Title</title>

    <link rel="stylesheet" href="css/normalize.css" />
    <link rel="stylesheet" href="css/foundation.css" />
    <link rel="stylesheet" href="css/style.css" />

    <!--[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');

      // Optionally these for CSS
      document.createElement('ng:include');
      document.createElement('ng:pluralize');
      document.createElement('ng:view');
    </script>
    <![endif]-->
    <!--<script src="js/vendor/json3.min.js"></script>-->
  </head>
  <body class="ng-app:myApp" id="ng-app">
    <div ng-app="myApp">
    <nav class="top-bar" ng-controller="MainCtrl">
      {{toto}}
      <!-- some html with some ng-show and ng-hide -->
    </nav>

    <div>
      <div ng-view="ng-view"></div>
    </div>

    <script src="js/vendor/custom.modernizr.js"></script>
    <script src="js/vendor/jquery.js"></script>
    <script src="js/vendor/jquery-ui-1.10.3.custom.min.js"></script>
    <script src="js/vendor/angular.js"></script>
    <script src="js/vendor/angular.cookies.js"></script>
    <script src="js/vendor/angular.upload.js"></script>

    <script src="js/app/main.js"></script>
    <script src="js/app/articles.js"></script>
    <script src="js/app/medias.js"></script>
    <script src="js/app/categories.js"></script>
    <script src="js/app/users.js"></script>
    <script src="js/app/keywords.js"></script>

    <script src="js/foundation.min.js"></script>
    <!--
    <script src="js/foundation/foundation.js"></script>
    <script src="js/foundation/foundation.alerts.js"></script>
    <script src="js/foundation/foundation.clearing.js"></script>
    <script src="js/foundation/foundation.cookie.js"></script>
    <script src="js/foundation/foundation.dropdown.js"></script>
    <script src="js/foundation/foundation.forms.js"></script>
    <script src="js/foundation/foundation.joyride.js"></script>
    <script src="js/foundation/foundation.magellan.js"></script>
    <script src="js/foundation/foundation.orbit.js"></script>
    <script src="js/foundation/foundation.placeholder.js"></script>
    <script src="js/foundation/foundation.reveal.js"></script>
    <script src="js/foundation/foundation.section.js"></script>
    <script src="js/foundation/foundation.tooltips.js"></script>
    <script src="js/foundation/foundation.topbar.js"></script>
    -->
    <script>
      $(document).foundation();
    </script>
    </div>
  </body>
</html>

对不起,如果我的英语太差了,

感谢您的帮助

杰罗姆

3 个答案:

答案 0 :(得分:3)

此相关问题中提供的解决方案将有所帮助:

Related IE7 and AngularJS SO Question

我已经成功地使用了与IE7相同的方法。

答案 1 :(得分:1)

我建议你阅读本页http://docs.angularjs.org/guide/ie

默认情况下,Angular与IE7不兼容。

答案 2 :(得分:0)

我最近开始研究一个模块来帮助实现angular和IE7。你必须采取许多障碍才能让它发挥作用。试一试,看看它是否适合您。

https://github.com/johngeorgewright/angular-ie7-support