angularJS改变背景颜色

时间:2015-04-28 12:16:21

标签: javascript css angularjs

所以,我只需要像this.style.backgroundColor = red;这样的东西 我怎么用角度写这个? $scope.style.backgroundColor没有用,还有其他选择吗?

编辑:

为了澄清一些事情,我需要更改<td>元素的CLICK上的颜色。在JS中很容易做到,但现在我需要动态地进行角度测量。所以是的,我没有看到ng-style如何帮助我?

1 个答案:

答案 0 :(得分:1)

由于您正在查看演示文稿更改,因此您可能希望在视图中进行更改,而不是在控制器中进行更改。

ng-style将允许您分配可动态更改的angularjs类对象。

以下是文档中的示例:

<input type="button" value="set color" ng-click="myStyle={color:'red'}">
<input type="button" value="set background" ng-click="myStyle={'background-color':'blue'}">
<input type="button" value="clear" ng-click="myStyle={}">
<br/>
<span ng-style="myStyle">Sample Text</span>
<pre>myStyle={{myStyle}}</pre>

修改

以下是如何根据控制器中的函数调用有条件地应用ng-style:

<td ng-style="{ background-color: clicked ? 'red' : 'black' }">

并且,在您的控制器功能中:

var $scope.clicked = false; var ChangeColor = function($index){ $scope.clicked = true; }

另请注意,您也可以使用ng-class(see this related question for examples)有条件地应用预定义的样式类。