我正在接受Angular JS: http://www.sitepoint.com/practical-guide-angularjs-directives/, 我发现以下代码适用于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>
具体来说,鼠标悬停和点击事件可以正常工作。但是,段落的背景颜色不在IE中(颜色永远不会改变)。它在Chrome中没问题。谢谢!
答案 0 :(得分: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>
答案 1 :(得分:3)
使用ng-style标签代替style =&#34; {{CSS}}&#34;。后者适用于Chrome和Firefox,但无法在Internet Explorer中使用&lt; = 11。
答案 2 :(得分:3)
我在头部添加了以下内容并且有效。它与马克所说的非常相似......只是没有特定的asp.net:
<meta http-equiv="X-UA-Compatible" content="IE=11" />
我还发现我需要在旧版IE的if语句中添加response和modernizer:
<!--[if lt IE 9]>
<script src="/Binders/Scripts/modernizr-2.8.3.js"></script>
<script src="/Binders/Scripts/respond.js"></script>
<![endif]-->
答案 3 :(得分:0)
尝试&#34;使用严格&#34;控制器之前的指令
"use strict";
function controller($scope) {
// your code....
}