Angular JS适用于Chrome,但不适用于IE 11

Dun*_*uch 13 javascript internet-explorer google-chrome background-color angularjs

我正在http://www.sitepoint.com/practical-guide-angularjs-directives/上找到Angular JS ,我发现以下代码可以在Chrome中使用,但不适用于IE 11.

<!DOCTYPE html>
<html ng-app="myapp">
<head>
    <meta charset="utf-8" />
    <title>No Title</title>
    <script data-require="angular.js@1.2.x" src="http://code.angularjs.org/1.2.7/angular.js" data-semver="1.2.7"></script>
</head>
<body>
    <input type="text" ng-model="color" placeholder="Enter a color..." />
    <div data-hello-world />
    <script>
        var app = angular.module('myapp', []);
        app.directive('helloWorld', function () {
            return {
                restrict: 'AE',
                replace: true,
                template: '<p style="background-color:{{color}}">Hello World!!</p>',
                link: function (scope, elem, attrs) {
                    elem.bind('click', function () {
                        elem.css('background-color', 'white');
                        scope.$apply(function () { scope.color = "white"; });
                    });
                    elem.bind('mouseover', function () { elem.css('cursor', 'pointer'); });
                }
            }
        });
    </script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

具体来说,鼠标悬停和单击事件工作正常.但是,段落的背景颜色不在IE中(颜色永远不会改变).它在Chrome中没问题.谢谢!

Mar*_*ark 8

可能是因为文档兼容性.这对我有用:

将此标记添加到web.config.

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <httpProtocol>
      <customHeaders>
        <clear />
        <add name="X-UA-Compatible" value="IE=10" />
      </customHeaders>
    </httpProtocol>
  </system.webServer>
</configuration> 
Run Code Online (Sandbox Code Playgroud)

  • 如果您正在网站上工作并且无法使其脱机以进行此更改,但是拥有.master(如果是asp.net网站)文件,则添加<meta http-equiv ="X-UA-Compatible"内容="IE = 11"/>到主人的<head>也是一个很好的解决方案.感谢@James Gates R在下面提出这个建议. (2认同)