2014-09-23 90 views
0

這是我迄今爲止 - 我想只有讓文字顯示當「timelineTile」作出更大..jQuery的,如果hasclass addclass

$(function() { 
    $('.timelineTile').click(function (evt) { 
     evt.stopPropagation(); 
     $('.selected').children().not(this).removeClass('clicked'); 
     $(this).toggleClass('clicked'); 

     if($('.selected').children().hasClass("clicked")){ 
      $('.details').addClass('show'); 
     } 
    }); 

    $(document).click(function() { 
     $('.timelineTile').removeClass('clicked'); 
     $('.details').removeClass('show'); 
    }); 
}); 

fiddle also

+2

沒有得到什麼確切的問題,請您詳細說明一下嗎? – 2014-09-23 11:04:07

+0

你的意思是「試圖讓文字只顯示」?目前,* only *的位置將它綁定到* text * not * show *。 – 2014-09-23 11:08:56

+0

我希望文本只顯示當單擊框展開紅色..當你點擊另一個文本然後隱藏像框一樣回到它是如何,然後點擊其他框並顯示文本,所以像盒子一樣,但文字太.. – 2014-09-23 11:09:22

回答

0

添加下面的CSS以及顯示文本,只有當盒子較大

.timelineTile table{ 
    display: none; 
} 
.timelineTile.clicked table{ 
    display: block; 
} 
+0

超級!謝謝! – 2014-09-23 11:12:09

0

http://jsfiddle.net/devools/gjyksjuh/1/ 嘗試小提琴?

$(function() { 
    $('.timelineTile').click(function (evt) { 
     evt.stopPropagation(); 
     $('.selected').children().not(this).removeClass('clicked'); 
     $(this).toggleClass('clicked'); 

     if($('.selected').children().hasClass("clicked")){ 
      $('.details').removeClass('show'); 
      $(this).children('.details').addClass('show'); 
} 
    }); 


    $(document).click(function() { 
     $('.timelineTile').removeClass('clicked'); 
     $('.details').removeClass('show'); 
    }); 
}); 
+0

這幾乎可以工作,但是當點擊它保持的同一個盒子時 – 2014-09-23 14:01:12