2

サイドパネルを切り替えるには、次のコードを使用します。

$(".example_wrapper_panel_link").click(function() { 
$(".example_wrapper").addClass('example_wrapper_active'); 
$(".example_wrapper_panel").animate({width: "toggle"}, 400);

addClass は正常に動作していますが、もう一度クリックして div を非表示にすると、追加したクラスを再度削除したいと思います。

この場合の解決策が見つからないようです。

よろしくお願いします。

4

5 に答える 5

4

メソッドを使用する必要があります.toggleClass()

$(".example_wrapper_panel_link").click(function() { 
   // instead of addClass() just use toggleClass()
   $(".example_wrapper").toggleClass('example_wrapper_active'); 
   $(".example_wrapper_panel").animate({width: "toggle"}, 400);
});

.toggleClass()存在しない場合はターゲットにクラスを追加し、存在する場合は再度削除します。

于 2012-06-15T07:43:16.160 に答える
2

.removeClass()特定のクラスを削除します。

.toggleClass()指定されたクラスを切り替えます。つまり、欠落している場合はそのクラスを追加し、そうでない場合は削除します。

したがって、ハンドラーは次のように単純になります。

$(".example_wrapper").toggleClass('example_wrapper_active'); 

ドキュメンテーション forremoveClass()および fortoggleClass()

于 2012-06-15T07:44:03.210 に答える
1

.removeClass('class');jQuery API here を参照してください。交互に興味が.toggleClass('class');ある場合は、より適切な場合があります。

于 2012-06-15T07:44:25.253 に答える
1

.toggleClass を使用してみてください。

$(".example_wrapper").toggleClass('example_wrapper_active');
于 2012-06-15T07:44:28.030 に答える
0

.toggleClass()と の代わりにを使用する必要が.addClass()あり.removeClass()ます。

于 2012-06-15T07:46:52.073 に答える