Angularjs - IE7模式下的IE8(以及IE8兼容模式)无法正常工作

时间:2012-08-01 15:49:38

标签: javascript web-applications angularjs

我对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的机器,所以我无法测试......

3 个答案:

答案 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">