IE中的AngularJS错误,风格与ng风格

时间:2016-03-17 22:26:44

标签: javascript css angularjs internet-explorer microsoft-edge

我正在使用Angular JS v1.1.5,并发现了一个与IE相关的有趣问题。

在IE 9,10,11和Edge中,以下似乎不起作用,即使它在Chrome中运行良好:

<div style="width: {{progress.percent()}}%;"></div>

虽然这适用于所有浏览器:

<div ng-style="{width: progress.percent() + '%'}"></div>

我好奇为什么第一个选项在IE / Edge中不起作用。有没有任何已知的错误?

2 个答案:

答案 0 :(得分:8)

当IE 9&amp; 10尝试呈现该HTML,它基本上删除了要在HTML上解析的无效HTML。

因此将style="display: {{'block'}}"视为无效的html,因为它具有未知的{{}}语法&amp;它使该属性呈现为style=""

除了ng-style之外,您可以使用ng-attr-*指令,如下所示

<div ng-attr-style="{{'width: '+ progress.percent() +'%;'}}"></div>

,当progress.percent()值发生更改时,将创建样式属性。

有关详细信息,请查看此旧记录的github issue

How style attribute become ""?

答案 1 :(得分:0)

问题也发生在边缘。像这样写

functools.partialmethods
相关问题