jQuery日本語リファレンス

jQuery does not mean Japanese Query...

Events/API/jQuery

toggle(fn1, fn2, ..., fnN)

要素がクリックされる毎に、引数で渡した関数を順番に呼び出します。

最初に要素をクリックすると、第一引数に渡した関数が実行されます。もう1度クリックすると、第二引数に渡した関数が実行されます。以降、クリックされる度に関数が順に実行され、最後まで行くと最初の関数が実行されます。

jQuery1.2.6から、この関数は複数の引数を取れるようになりました。
それ以前のバージョンでは、引数は最初の2つだけが有効です。
また、この関数を設定した後で削除するには、unbind("click")である必要がありました。
これも1.2.6以降では、直接unbind("toggle")とすることが可能になっています。
サンプル
サンプル1
リストアイテムをクリックすると、リストスタイルをdiscにし、色を青くします。もう一度クリックすると、それらのスタイルを削除します。
<ul>
  <li>Go to the store</li>
  <li>Pick up dinner</li>
  <li>Debug crash</li>
  <li>Take a jog</li>
</ul>
$("li").toggle(
  function () {
    $(this).css("list-style-type", "disc")
           .css("color", "blue");
  },
  function () {
    $(this).css({"list-style-type":"", "color":""});
  }
);
[全コードを表示] [実行結果を単体で表示]