从链接添加/删除div类 - jQuery

时间:2012-11-01 00:00:20

标签: javascript jquery twitter-bootstrap

我已经在这里玩了足够的东西,让它到现在的位置,但我需要一点帮助克服障碍......就像我想的每个人一样!

我试图在点击链接(.clickable)时将其更改为从span3更改为span6。

.clickable链接位于div内部,这是类需要更改的内容 - .block是我在同位素中用于项目选择器的内容。

链接:

<a class="clickable" href="#enlarge-article"><i class="icon-fullscreen"></i>&nbsp;&nbsp;<strong>Enlarge</strong></a>

Javascript:

var $container = $('#portfolio');   
$container.delegate( '.block', 'click', function(){
      $(".block").removeClass('span3').addClass('span6').siblings().removeClass('span6').addClass('span3');
  $container.isotope('reLayout');
});

更新了类错误 - 现在出现在.js

2 个答案:

答案 0 :(得分:2)

你说句柄是针对.clickable元素的..

同时使用.on()代替.delegate()

试试这个

var $container = $('#portfolio');   
$container.on( 'click','.clickable', function(e){
    e.preventDefault();
    // If you want to affect all the .block divs
    $(".block").removeClass('span6').addClass('span3');
    // If you want to affect only the block in which the anchor was clicked
    //$(this).closest('.block').removeClass('span6').addClass('span3');
    $(this).removeClass('span3').addClass('span6');
    $container.isotope('reLayout');
});

答案 1 :(得分:1)

试试这个:

var $container = $('#portfolio');   
$container.delegate( '.block', 'click', function(){
    $(".block").removeClass('span6').addClass('span3');
    $(this).removeClass('span3').addClass('span6');
    $container.isotope('reLayout');
});