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'); 

removeClass()用于和用于的文档toggleClass()

于 2012-06-15T07:44:03.210 回答
1

.removeClass('class');应该这样做,请参阅此处的 jQuery API。如果你对交替感兴趣,.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()and .removeClass()

于 2012-06-15T07:46:52.073 回答