2015-11-20 136 views
0

我想檢查是否有撥動元素有一個特定的類或沒有,我沒有看到可以在問題來自:jQuery的hasClass給出錯誤的結果

<div class="tog"> 
    <div id="1" class="toggle toggle-light on"></div> 
</div> 
<div class="tog"> 
    <div id="2" class="toggle toggle-light on"></div> 
</div> 

<script src="https://code.jquery.com/jquery-2.1.3.min.js"></script> 

,並在js :

$(document).ready(function() { 
    $(".myButton").on("click",function(){ 
     $('.tog').each(function(i, obj) { 
      var s = "yes"; 
      if ($(this).children("div").hasClass('toggle-off')) { 
       s = "no"; 
      } 

      console.log($(this).children("div").attr('class')); 
      console.log(obj.id+s); 
     }); 
    }); 

結果(在Firebug控制檯):

toggle toggle-light on 
1 yes 
toggle toggle-light on 
2 yes 

,但如果我關掉現在切換:

    在源代碼
  • ,類變細「切換客」(切換變爲灰色):OK
  • ,但我總是得到「上切換切換光」

我不根本不懂...有什麼想法?

+3

郵報,切換到「切換客」的代碼。 –

+0

你如何切換? –

+0

我使用這個插件:https://github.com/simontabor/jquery-toggles,我可能沒有正確使用它 – Julien

回答

0

我終於找到了答案:

$(".myButton").on("click",function(){ 
    $('.toggle').each(function(i, obj) { 
     console.log($(this).data('toggles').active); 
     //will show true or false depending the toggle is active or not 
    }); 
});