2013-02-08 80 views
1

我确信这应该已经在这里覆盖,但我一直没有找到具体处理这个问题。jQuery切换,隐藏和更改类

我有2个div的一个页面内,像这样...

<div class="span4 section"> 
    ...content... 
</div> 
<div class="span8 section"> 
...content... 
</div> 

我需要实现一个onclick,将隐藏的span4股利和更改类的span8股利span12的,之后已完成能够恢复它(使用jQuery.toggle,我假设)。

我可以成功做一个或另一个,但不能同时使用我有限的JS/jQuery知识同时工作的两件事情!

+1

onclick什么? – 2013-02-08 15:16:35

回答

5

你应该添加另一个类的名字你span8类,例如toggleSpan然后

$('.clickElement').click(function() { 
    $('.span4').toggle(); // this toggles only visibility 
    $('.toggleSpan').toggleClass('span8 span12'); 
}); 

假设你要用作触发器的元素具有类clickElement

+1

谢谢!正是我需要的! – Lee 2013-02-08 15:24:05

0
$(this).toggleClass('span12 section'); 
$('.class="span4 section").hide(); 

调用这个函数上点击

+0

感谢您的回复。我已经得到了那么多,但正如我的问题所示 - 我正在努力完成这一点,同时隐藏span4 div – Lee 2013-02-08 15:22:06

0

试试这个:http://jsfiddle.net/SwANP/

$('.section').click(function(){ 
    $('.section:eq(0)').toggleClass('span4'); 
    $('.section:eq(1)').toggleClass('span8 span12'); 
}); 
1

您可以使用数据属性来帮助你们。这应该看起来像这样:

$('#target').click(function(event){ 
    if ($(this).data('toggled') == '1') { 
     $('.span8').addClass('span12').removeClass('span8'); 
     $(this).data('toggled', '0'); 
    } else { 
     $('.span12').addClass('span8').removeClass('span12'); 
     $(this).data('toggled', '1'); 
    } 
});