「Knockout.js/cssバインディング」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
imported>Administrator
(ページの作成:「Knockoutの'''cssバインディング'''とは、パラメーターの値に応じ、関連付けられたDOM要素のCSSクラスを、追加または削除...」)
 
imported>Administrator
4行目: 4行目:
  
 
== パラメーター ==
 
== パラメーター ==
 +
基本的な書式は以下のとおりである。
 +
<source lang="html5">
 +
<div data-bind="css: { CSSクラス名: パラメーター値または式 }">...</div>
 +
</source>
 +
パラメーターの値または式の結果が、trueならばCSSクラスが追加され、falseならばCSSクラスが削除される。
 +
なお、式を指定する場合の「式」とは[[JavaScript]]そのものなので関数なども使いたい放題である。
  
 
== 使用例 ==
 
== 使用例 ==
=== hello world ===
 
<source lang="html5">
 
 
<source lang="html5">
 
<source lang="html5">
 
<!DOCTYPE html>
 
<!DOCTYPE html>

2012年4月10日 (火) 16:11時点における版

Knockoutcssバインディングとは、パラメーターの値に応じ、関連付けられたDOM要素のCSSクラスを、追加または削除するバインディングのことである。

なお、CSSクラス単位ではなく、style属性の値を書き換えたい場合にはstyleバインディングを使う。

パラメーター

基本的な書式は以下のとおりである。

<div data-bind="css: { CSSクラス名: パラメーター値または式 }">...</div>

パラメーターの値または式の結果が、trueならばCSSクラスが追加され、falseならばCSSクラスが削除される。 なお、式を指定する場合の「式」とはJavaScriptそのものなので関数なども使いたい放題である。

使用例

<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <title>knockout.js - html bindding sample 1</title>
  <script type="text/javascript" src="jquery-1.5.1.min.js"></script>
  <script type="text/javascript" src="knockout-2.0.0.js"></script>
  <script type="text/javascript">
    jQuery(function() {
      // モデル
      var AppViewModel = function() {
        this.valueA = ko.observable(90);
        this.valueB = ko.observable(20);
      }
      // バインディング適用
      ko.applyBindings(new AppViewModel());
    });
  </script>
  <style>
    .AAA { color: #0000FF; background-color: #FFFF00; }
    .BBB { color: #FF0000; background-color: #00FFFF; }
  </style>
</head>
<body>
 
  <p data-bind="css: { AAA: valueA() > 70, BBB: valueA() < 30 }">Aさん</p>
  <p data-bind="css: { AAA: valueB() > 70, BBB: valueB() < 30 }">Bさん</p>
 
 </body>
</html>

関連項目

参考文献

外部リンク