与IE7 Angularjs的兼容性

时间:2014-06-28 09:16:47

标签: javascript angularjs internet-explorer

是否可以将代码角度与IE7组合?
您需要安装和写入此最小样本以在IE7中工作吗?

<!DOCTYPE html>
<html lang="en" id="ng-app" ng-app='app'>
<head>
    <!--[if lte IE 8]>
        <script src="bower_components/json3/lib/json3.min.js"></script>
    <![endif]-->

    <meta charset="UTF-8">
    <title>Tests</title>
    <script type="text/javascript" src="bower_components/angular/angular.min.js"></script>
    <script type="text/javascript" src="app.js"></script>

</head>
<body>
    <div ng-controller="ButtonCtrl" ng-init="name = ''">
        <button id="start-button" ng-click="run('Brrrr!!!')">push</button>
        <p>{{name}}</p>
        <p ng-init="count = 0">{{count}}</p>
    </div>
</body>
</html>

1 个答案:

答案 0 :(得分:1)

我从不厌倦IE7,但对于IE8,我把下面的html放进去。这基本上是polyfills HTML5元素,CSS3选择器和媒体查询。您可能还想查看es5垫片(https://github.com/es-shims/es5-shim)。但是,你使用所有原生的角度方法,即angular.forEach(...)你可能没有这个。一如既往,您需要在所有浏览器中对此进行测试!!!!

<!DOCTYPE html>
<!--[if IEMobile 7 ]>    
<html class="no-js iem7" xmlns:ng="http://angularjs.org" id="ng-app" ng-app="fsn"> <![endif]-->
    <!--[if (gt IEMobile 7)|!(IEMobile)]><!-->
    <html class="no-js" id="ng-app" ng-app="fsn">
    <!--<![endif]-->

    <head>
      <!--[if lte IE 8]>
        <script>
            document.createElement('ng-include');
            document.createElement('ng-switch');
            document.createElement('ng-if');
            document.createElement('ng-pluralize');
            document.createElement('ng-view');

            // needed to enable CSS reference
            document.createElement('ng:view');
        </script>
        <![endif]-->

      <!--[if lt IE 9]>
        <script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.6.2/html5shiv.js"></script>
        <script src="//s3.amazonaws.com/nwapi/nwmatcher/nwmatcher-1.2.5-min.js"></script>
        <script src="//html5base.googlecode.com/svn-history/r38/trunk/js/selectivizr-1.0.3b.js"></script>
        <script src="//cdnjs.cloudflare.com/ajax/libs/respond.js/1.1.0/respond.min.js"></script>
        <![endif]-->

      <meta charset="utf-8">

      <script src="../vendor/modernizr/modernizr.js"></script>
    </head>

例如,IE7不支持“控制台”的API也值得一看。有角度的团队表示他们只支持使用Angular&lt; 1.2.x的IE8,所以你可能不得不玩它以使它顺利运行。

我让IE8运行良好,但由于速度很慢,因此加载一些较大的页面显然很困难。