是否有一个jQuery选择器可以获取类 A 的所有元素,而不是类 B 的后代?
示例:
<body>
<div class=report-value id=overview></div>
<div class=panels>
<div class=report-value id=sales></div>
<div class=report-value id=training></div>
<div class=report-value id=hr></div>
</div>
<div class=report-value id=summary></div>
</body>
对于上面的示例,需要选择不是.report-value
元素后代的所有.panels
元素。报告值计算量很大,只有在实际显示时才需要计算。
类似的东西:
var elems = $('.report-value:excludeTree(.panels)');
将返回仅包含#overview
和#summary
。
性能对此Web应用程序非常重要。
答案 0 :(得分:2)
答案 1 :(得分:1)
尝试,
var elems = $('.report-value').filter(function(){
return $(this).closest('.panels').length ==0;
});
答案 2 :(得分:0)
var allpanels=$('body>.report-value');
答案 3 :(得分:0)
$('body > .report-value')
或
$('.report-value').each(function(){
if(!$(this).parent().hasClass('.panels'))
{
//use query
}
});
答案 4 :(得分:0)
试试这个:
$('.report-value').each(function(){
if(!$(this).parent().hasClass('panels') && !$(this).parents().eq(1).hasClass('panels'))
{
console.log($(this));
}
});
它仅控制你需要的divs