2014-09-13 84 views
0

我想要顯示一個元素,如果它有一個類等於一個變量,但我似乎無法得到它的工作。jQuery如果元素hasClass的var做這

我的代碼:

HTML:

<a class="addme" title="showme" href="javascript:void(0)">hey</a> 
<div class="list"> 
    <div class="hey">hide</div> 
    <div class="hey showme">show</div> 
    <div class="hey">hide</div> 
</div> 

<span></span> 

JQUERY:

$(function(){ 
    $('div').hide(); 

    $('.addme').click(function (e) { 
     e.preventDefault(); 
     var x = $(this).attr('title'); 
     if ($('.hey').hasClass(x))  
     { 
     $('.list ' + '.' + x).show(); 
     $('span').html('.list ' + '.' + x) 
     } 
    }) 
}); 

的jsfiddle LINK

回答

0

.showme DIV實際上被顯示,但.list是隱藏的,因爲你用:

$('div').hide(); 

您需要specifiy這個選擇:

$('.list div').hide(); // e.g., can be a lot of things to work, depends on context 

而且,你有一些冗餘代碼:

$(function(){ 
    $('.list div').hide(); 

    $('.addme').click(function (e) { 
     e.preventDefault(); 
     var x = $(this).attr('title'); 
     $('.list ' + '.' + x).show(); 
     $('span').html('.list ' + '.' + x) 
    }) 
}); 

JSFiddle

+0

哎呀,完全忽略了!謝謝! – babusi 2014-09-13 18:42:53