Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如果父级有类,则不';行不通_Jquery_Html - Fatal编程技术网

Jquery 如果父级有类,则不';行不通

Jquery 如果父级有类,则不';行不通,jquery,html,Jquery,Html,我不明白我的jQuery代码中有什么不起作用的地方。HTML代码是PHP生成的,所以我需要用jQuery编辑它。以下是HTML代码: <div class="container"> <li class="cat-item cat-item-6"><a>Biologie</a></li> <li class="cat-item cat-item-5"><a>Chimie</a></li&g

我不明白我的jQuery代码中有什么不起作用的地方。HTML代码是PHP生成的,所以我需要用jQuery编辑它。以下是HTML代码:

<div class="container">
  <li class="cat-item cat-item-6"><a>Biologie</a></li>
  <li class="cat-item cat-item-5"><a>Chimie</a></li>
  <li class="cat-item cat-item-1"><a>Non classé</a></li>
  <li class="cat-item cat-item-3"><a>Physique</a>
    <ul class='children'>
      <li class="cat-item cat-item-4"><a>Physique quantique</a></li>
    </ul>
  </li>
</div>
我不明白为什么它不起作用。代码

$(".cat-item").addClass( "list-group" );

工作正常,因此我确信(或非常肯定)父函数()或hasClass()函数存在问题。

如果有条件,您将该
放在哪个函数中?如果你把它放在
$(document).ready()
$(这个)
将是
$(document)

使用该逻辑,您应该在附加到
li

我在下面用变量做了一个解决方案,这样你就更容易理解了:)

在您的
html
结构中添加了
ul
,但该结构丢失(请小心)

请参阅下面的代码片段

var cat=$(“ul li.cat item”)//使用class.cat item获取li
$(cat).each(function(){//遍历所有.cat项元素
var parentUL=$(this.parent(“ul”)//获取每个li.cat-item的父项
if(!$(parentUL).hasClass(“children”){//检查父级是否没有类子级
$(this.addClass(“列表组”);//如果是>将类添加到其父级没有class.children的li
}
})
.list group>a{
颜色:红色;
}

    生物学 Chimie 非船级社 体格
      体格量化

您的代码指出,如果.cat项的第一个父项没有类,则向某个对象添加一个类(该类的作用域是什么)

如果要向lis中添加不在该类ul中的类,请选择这些类

$(“.container ul”)//选择uls
.not(“ul.children”)//过滤掉类中的
.find(“>.cat项”)//选择直接子体
.addClass(“列表组”)//添加类
li{
背景色:石灰;
}
.列表组{
背景颜色:黄色
}

    生物学 Chimie 非船级社 体格
      体格量化

因为
不是LI为什么lis不在ul中?因为提供的HTML无效,所以我投票关闭这个问题,因为提供的HTML无效。无效的HTML,并且不理解
是如何工作的,这似乎是问题所在?嗨,div容器中的HTML是用wordpress函数wp_list_categories()生成的,我了解很多事情,非常感谢你的时间!祝你有愉快的一天@汤玛莎很高兴我能帮上忙。
parentClass!=(“children”)
如果有多个类,则会失败。。。。“你为什么不去上Hasscarello的课呢?”epascarello因为。。累了:)对不起。谢谢你指出这一点。编辑。一天的工作之后,我往往会把事情弄得过于复杂嗨,也谢谢你的回答!这对我帮助很大。祝您今天过得愉快!这种方法比你选择的循环解决方案要好。
$(".cat-item").addClass( "list-group" );