Angular JS,html属性中的输出值,在IE8 / 9中失败

时间:2013-10-30 08:35:29

标签: html angularjs

我遇到了一种情况,我通过一系列颜色循环并输出一个十六进制值(通过角度)到样式属性

<p class="colors">
    <span ng-repeat="color in product.colors" class="product-color" title="{{ color.title }}" style="background-color: #{{ color.hex }};"></span>
</p>

由于某种原因,IE8和IE9无法识别背景颜色。我得到的只是一个没有style属性的元素,但所有其他属性都在那里。我已经对变量的值进行了三次检查,它们都存在,并且可以在Chrome / FF / Opera / Safari中使用。

IE8 / 9中的输出

<span title="White" class="product-color ng-scope" ng-repeat="color in product.colors">

Chrome中的输出

<span ng-repeat="color in product.colors" class="product-color ng-scope" style="background-color: #FFFFFF;" title="Vit"></span>

如何让IE识别样式属性?

1 个答案:

答案 0 :(得分:3)

使用ng-style代替style - IE在Angular解析/编译HTML之前删除了该属性。

http://docs.angularjs.org/api/ng.directive:ngStyle