我对Angularjs版本1.0.1有点问题。我创建了一个应用程序并在IE8中以IE7模式测试它并且它没有听取ng-change或ng-click,没有测试其他句柄,但至少那两个对我不起作用...(所有其他浏览器都很好)我希望你们可以帮助我,或者我可能在这里遗漏了一些东西...... IE7 / 8有特殊待遇吗?
在这里你看到控制器:
CalculatorCtrl = function($scope) {
$scope.btw = 1;
$scope.input = 0.00;
$scope.output = 0.00;
$scope.getBedrag = function() {
var input = $scope.input;
var btw = $scope.btw;
var output = 0.0;
if(input != 0) {
input = parseFloat(input.replace (",", "."));
var tmp = input+"";
$scope.input = tmp.replace(".", ",");
}
if($scope.isNumber(input)) {
output = $scope.calculateBedrag(input);
if(btw == 1) output = output * 1.19;
$scope.output = output.toFixed(2).replace('.', ',');
} else {
//alert('Voer een bedrag in a.u.b.');
$scope.input = 0;
$scope.output = 0;
}
}
}
在html中我只使用:
<input autocomplete="off" ng-model="input" class="x-width" type="text" name="bedrag" value="" ng-change="getBedrag()" />
<input class="x-width" disabled="disabled" type="text" name="bedrag" value="{{output}}" />
希望有人可以帮助我:)。
修改 我在IE7模式中试过IE测试器,也没用。我没有任何带有真实 IE7的机器,所以我无法测试......
答案 0 :(得分:1)
还要确保您的应用程序遵循文档中列出的IE指南。 http://docs.angularjs.org/guide/ie
答案 1 :(得分:0)
嗯,文档说:
“基于Webkit的浏览器(Safari,Chrome,iPhone,Android,WebOS, 黑莓6),Firefox,IE6及以上版本。请注意,CSS仅适用于IE7 以上。“
所以它应该工作正常。兼容模式有点奇怪,如果他们在那种模式下测试它会让我感到惊讶。
我无法想象为什么你需要它在该模式下工作 - 如果你在内部网上,你可以通过组策略更改IE的设置(据我所知),使用compat模式停止它
答案 2 :(得分:0)
要使其工作,您必须使用类来定义Angular标记。例如:
<div class="ng-controller:CalculatorCtrl">
而不是
<div ng-controller="CalculatorCtrl">