jQuery - 連鎖


jQuery - チェーン


jQuery を通じて、アクション/メソッドをリンクできます。

チェーンを使用すると、1 つのステートメントで複数の jQuery メソッドを (同じ要素に対して) 実行できます。


jQuery メソッドのリンク

これまで、jQuery ステートメントを一度に 1 つずつ (次々に) 書いてきました。

ただし、同じ要素に対して複数の jQuery コマンドを次々に実行できるようにするチェーンと呼ばれる手法があります。

ヒント: こうすることで、ブラウザは同じ要素を何度も探す必要がなくなります。

アクションをリンクするには、そのアクションを前のアクションに追加するだけです。

次の例では、css()、slideUp()、slideDown() を相互にリンクします。最初に「p1」要素が赤くなり、次に上にスライドし、次に下にスライドします:

インスタンス

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function()
  {
  $("button").click(function(){
    $("#p1").css("color","red").slideUp(2000).slideDown(2000);
  });
});
</script>
</head>
<body>

<p id="p1">菜鸟教程!!</p>
<button>点我</button>

</body>
</html>

インスタンスの実行»

「インスタンスの実行」ボタンをクリックしてオンラインインスタンスを表示します

必要に応じて、複数のメソッド呼び出しを追加することもできます。

ヒント: リンクすると、コード行が混乱します。ただし、jQuery の構文はそれほど厳密ではなく、改行やインデントを含めて必要な形式で記述することができます。

次のように書いてもうまく実行できます:

Instance

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function()
  {
  $("button").click(function(){
    $("#p1").css("color","red")
      .slideUp(2000)
      .slideDown(2000);
  });
});
</script>
</head>
<body>

<p id="p1">菜鸟教程!!</p>
<button>点我</button>

</body>
</html>

サンプルの実行»

「サンプルの実行」ボタンをクリックしてオンラインサンプルを表示します

jQueryは余分なスペースを破棄し、次のように扱います。上記のコード行を実行する 1 行のコード。