2016-02-04 67 views
2

我不知道是否有可能做一个事件只在点击元素, ,虽然这个元素有相同的类, ,如果内部或旁边的这个元素有一个div使用类'子类别',使用toggleClass方法显示它。 这里的HTML。做一个事件只在点击同一类的元素

<ul> 
    <li class="catname">something</li> 
    <li class="catname"> 
     something 
     <div class="subcategory none">some hidden content to show</div> 
    </li> 
    <li class="catname">something</li> 
</ul> 

这是我的尝试:

$(document).on("click",".catname", function (event) { 
    $(".subcategory").next().toggleClass('none') 
}); 

而且这样的:

$(".catname").bind("click", function() { 
    $(".subcategory").next().toggleClass('none') 
}); 

谢谢

+3

告诉我们,你至今还没有尝试过的jQuery代码。 –

+0

使用事件上'结合class' –

+0

这里: “子类别”。\t \t的$(document)。在( “点击”, “catname”,函数(事件){ \t \t \t $()的next()。 toggleClass('none') \t \t}); –

回答

2

你应该使用click处理程序中的this关键字引用的元素这引发了这一事件。从那里你可以遍历DOM到find()的内部元素。试试这个:

$(document).on('click', '.catname', function (event) { 
    $(this).find('.subcategory').toggleClass('none'); 
}); 

Example fiddle

+0

这就是我正在寻找的谢谢! –

相关问题