gpt4 book ai didi

javascript - 如何通过 JavaScript 控制
    标签内的
  • 标签?

转载 作者:行者123 更新时间:2023-11-30 09:29:46 24 4
gpt4 key购买 nike

这是我的代码,

<div style="background-color:red;">
<ul class="myClass">
<li> CCD </li>
<li class="active"> BCA </li>
<li> ABC </li>
</ul>
</div

我想在有 class="active"时自动更改 div 颜色。当我只有 ul 类时如何获取 li 类,以及如何使用 javascript 更改此 div 背景颜色?

最佳答案

您可以使用 jQuery :has()伪类选择器。

$('div:has(li.active)').css('background-color', 'green')
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div style="backgroundColor='red'">
<ul class="myClass">
<li>CCD</li>
<li class="active">BCA</li>
<li>ABC</li>
</ul>
</div>


或者使用filter() jQuery 中的方法。

$('div').filter(function() {
return $('li.active', this).length;
}).css('background-color', 'green')
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div style="backgroundColor='red'">
<ul class="myClass">
<li>CCD</li>
<li class="active">BCA</li>
<li>ABC</li>
</ul>
</div>


使用纯 JavaScript,您可以执行类似的操作。

// select all elements and convert into an array
// for iterating over the elements
// for older browser use [].slice.call(....)
// for newer browser it supports forEach over
// NodeList as well
Array.from(document.querySelectorAll('div'))
// iterate over the elements
.forEach(function(ele) {
// check particular element exist inside
if (ele.querySelector('li.active'))
// if exist then add background color
ele.style.backgroundColor = 'green';
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div style="backgroundColor='red'">
<ul class="myClass">
<li>CCD</li>
<li class="active">BCA</li>
<li>ABC</li>
</ul>
</div>

关于javascript - 如何通过 JavaScript 控制 <ul> 标签内的 <li> 标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47027904/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com