この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

スタイルの追加と削除

実行時に要素の CSS スタイルを追加または削除できます。

次のデモでは、要素の CSS スタイルを追加および削除する方法を示します。

コンポーネントのソース

1swfobject.registerObject("clippy.codeblock-0", "9");
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17<aura:component>
18    <div aura:id="changeIt">Change Me!</div><br />
19    <ui:button press="{!c.applyCSS}" label="Add Style" />
20    <ui:button press="{!c.removeCSS}" label="Remove Style" />
21</aura:component>
22

CSS ソース

1swfobject.registerObject("clippy.codeblock-1", "9");
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17.THIS.changeMe {
18    background-color:yellow;
19    width:200px;
20}
21

クライアント側コントローラのソース

1swfobject.registerObject("clippy.codeblock-2", "9");
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17{
18    applyCSS: function(cmp, event) {
19        var el = cmp.find('changeIt');
20        $A.util.addClass(el.getElement(), 'changeMe');
21    },
22    
23    removeCSS: function(cmp, event) {
24        var el = cmp.find('changeIt');
25        $A.util.removeClass(el.getElement(), 'changeMe');
26    }
27}
28

このデモのボタンは、CSS スタイルを追加または削除するコントローラアクションに結び付けられています。CSS スタイルを要素に追加するには、$A.util.addClass(element, 'class') を使用します。同様に、クラスを削除するには、コントローラで $A.util.removeClass(element, 'class') を使用します。cmp.find() でローカル ID (このデモでは aura:id="changeIt") を使用して要素を特定します。

クラスの切り替え

クラスを切り替えるには、クラスを追加または削除する $A.util.toggleClass(element, 'class') を使用します。element パラメータは、HTML 要素またはコンポーネントの場合があります。

マークアップを動的に表示または非表示にする場合は、「マークアップの動的な表示または非表示」を参照してください。

要素の配列のクラスを条件に応じて設定するには、配列を $A.util.toggleClass() に渡します。
1mapClasses: function(arr, cssClass) {
2    for(var element in arr) {
3        $A.util.toggleClass(arr[element], cssClass);
4    }
5}

afterRender() または rerender() 内でユーティリティ関数が使用されていない場合に、cmp.getElement() を渡すと、コンポーネントの表示時にクラスが適用されないことがあります。このような場合は、HTML 要素よりも cmp コンポーネントを渡すことをお勧めします。詳細は、「表示ライフサイクル中に起動されたイベント 」 を参照してください。

メモ

DOM 要素を操作するその他のユーティリティ関数については、JavaScript API リファレンスを参照してください。