Jquery 如何在列表的children和childrens children元素中

Jquery 如何在列表的children和childrens children元素中,jquery,Jquery,使用这个JSFIDLE如何显示销售子类别下的子类别?例如,在“销售>皮带”和“销售>附件”下还有其他类别,但我不知道如何将它们作为目标来展示。下面的代码将显示正在销售的子类别,但我也需要它来显示销售子类别的子类别 var $currentCategory = "Sale"; var s = $(".sideCatMenu a").filter(function(){ return $.trim($(this).text()) === $currentCategory }).addClas

使用这个JSFIDLE如何显示销售子类别下的子类别?例如,在“销售>皮带”和“销售>附件”下还有其他类别,但我不知道如何将它们作为目标来展示。下面的代码将显示正在销售的子类别,但我也需要它来显示销售子类别的子类别

var $currentCategory = "Sale";
var s = $(".sideCatMenu a").filter(function(){
    return $.trim($(this).text()) === $currentCategory
}).addClass('active').eq(1).next().show()

下面将显示锚定后的所有项目,并显示文本
Sale

var $currentCategory = "Sale";
var s = $(".sideCatMenu a").filter(function() {
    return $.trim($(this).text()) === $currentCategory;
}).addClass("active").next().show();​​
代码可能无意中出错的地方是,文本
Sale
(在该上下文中)中没有第二个元素。请记住,
.eq()
使用基于零的索引。因此,您可能正在寻找的是(如果您真的想限制搜索):

然而,我不明白的一件事是,为什么要添加类,然后限制数组,因为这样匹配选择器和过滤器的所有元素都将是红色的,但其中只有一个将显示其项。如果要解决此问题,只需使用:

var $currentCategory = "Sale";
var s = $(".sideCatMenu a").filter(function() {
    return $.trim($(this).text()) === $currentCategory;
}).eq(0).addClass("active").next().show();​​

不建议打开元素文本,请使用ID、类或现代数据属性。您可能希望从该HTML开始。下面是之后的情况:如果您需要显示所有子类别,那么首先不要隐藏它们。很抱歉,我现在的Jquery技能非常有限。这两个例子都没有达到我的目标,即显示销售中的所有子类别和子类别。它们最初被一个我无法控制的php脚本隐藏,因为我只能访问html而不能访问php脚本。我正在使用JavaScript向他们展示我的愿望。还有其他想法吗?你是否试图在单击时显示它们,等等?没有,我试图在页面加载时自动显示它们currentCategory变量实际上是通过查看页面面包屑链接来确定的。
var $currentCategory = "Sale";
var s = $(".sideCatMenu a").filter(function() {
    return $.trim($(this).text()) === $currentCategory;
}).eq(0).addClass("active").next().show();​​