2016-08-09 11 views
1

複数のdivにクラスを追加して背景色を変更しようとしています。AngularJsの複数の要素にクラスを追加する

HTML:

angular.element(document.querySelector('.heading')).addClass('color-change'); 

私の問題は、この見出しを持つ複数のdivのがあること...ですが、それが唯一の最初の色を変えている:私は現在、この使用しています

<div class="span6"> 
    <div class="heading">Heading 1</div>      
</div> 

そのdivの発生。どのように私はそれを持っているので、そのクラスのすべての部門は、そのCSSのスタイリングを追加します。

答えて

3

document.querySelectorは、クエリに一致する最初の要素を選択します。 querySelectorAllはあなたが望む結果を達成するはずです。

JSFiddleは:https://jsfiddle.net/usw4cozt/

+1

これは答えが正しいですが、そうではありませんそれは角で – tdhulster

+0

合意された、私はむしろ 'ng-class'または' class = {{expression}} 'を使用したいと思いますが、ネイティブJSの使用には誰も責任を負いません。 Cに強く縛られているontroller(idkかもしれない)。 – MPawlak

0

使用の代わりにクラスのNG-クラスとモデルにクラス名を割り当てます。あなたがどうなるか

<h1 ng-class='mainCtrl.selectedTheme'>Title 2</h1> 

angular.module('demoApp', []) 
    .controller('MainController', MainController) 

function MainController() { 
    this.selectedTheme = 'blue'; 
} 

https://jsfiddle.net/4tuavhL2/

関連する問題