示例HTML:JQuery .not(next) - 有可能吗?
<div class=blah>
<div class=moreCats></div>
</div>
<div class=subCats>.......</div>
<div class=blah>
<div class=moreCats></div>
</div>
<div class=subCats>.......</div>
<div class=blah>
<div class=moreCats></div>
</div>
<div class=subCats>.......</div>
使用slideToggle
,如果我点击第一个div moreCats
我想未来subCats到slideDown
它一定。同时我想slideUp
任何其他开放subCats
,但不是,我正在切换,否则它会关闭然后重新打开,这是它做的。
问题:这有效吗?如果不是有类似的东西?
$('div.subCats').not($(this).next('.subCats')).slideUp();
下面是完整的JQuery我想
// show children cat items
$('#sideNav').on("click", ".moreCats", function() {
$('div.subCats').not($(this).next('.subCats')).slideUp(); // close all except next
$(this).next('.subCats').slideToggle(); // slideToggle next
});
'next'将**立即**下一个元素,并匹配选择器。那真的是你需要的吗? – elclanrs
为什么你不用一个类来注释你将要改变的类,然后把这个改变应用到没有那个类的所有东西上。可能与你所做的有点相似,但如果班级模仿一种状态,它可能会更好。 – bitoiu