gpt4 book ai didi

javascript - 我如何查看我的所有 Div 是否都有类(class)?

转载 作者:行者123 更新时间:2023-11-28 04:54:23 26 4
gpt4 key购买 nike

JSFiddle 在这里 http://jsfiddle.net/jaredasch1/eayc4mj3/

我正在 JSFiddle 中开发游戏,遇到了一些问题。一旦所有框都具有“.on”类,我想将它们全部重置为不具有“.on”类并执行新操作。但是,我似乎无法找到一种方法来做到这一点。我在这里寻找答案,但所有答案似乎都不起作用。

这是我的 HTML 正文

    <body>
<div id="button" class="on hover"></div>
<br>
<div class="block hover"></div>
<div class="block hover"></div>
<div class="block hover"></div>
<div class="block hover"></div>
<br>
<div class="block hover"></div>
<div class="block hover"></div>
<div class="block hover"></div>
<div class="block hover"></div>
<br>
<div class="block hover"></div>
<div class="block hover"></div>
<div class="block hover"></div>
<div class="block hover"></div>
<br>
<div class="block hover"></div>
<div class="block hover"></div>
<div class="block hover"></div>
<div class="block hover"></div>
</body>

这是我的 CSS

    .block {
height:100px;
width:100px;
border-radius:10px;
display:inline-block;
background-color:#33CCFF;
}
#button {
height:100px;
width:410px;
border-radius:10px;
display:inline-block;
background-color:#FF6666;
margin-bottom:10px;
}
.on {
background-color:#D633FF;
}

最后,这是我的 JQuery/JavaScript

    var main = function () {
$(".hover").mouseenter(function () {
$(this).fadeTo("slow", 0.25);
$(this).css('cursor', 'pointer');
});
$(".hover").mouseleave(function () {
$(this).fadeTo("slow", 1);
$(this).css('cursor', 'default');
});
$(".block").click(function () {
$(this).toggleClass("on");
$(this).prev().toggleClass("on");
$(this).nextAll().eq(4).toggleClass("on");
$(this).next().toggleClass("on");
$(this).prevAll().eq(4).toggleClass("on");
});
$("#button").click(function () {
$(".block").removeClass("on");
});
$(document).keydown(function (key) {
if (event.which === 32) {
$(".block").removeClass("on");
}
});
};

$(document).ready(main);

如果有人有任何答案,请回复,我很乐意虚心尝试。谢谢!

最佳答案

您可以使用 jQuery 获取所有 div,然后在另一个调用中使用 on 类获取所有 div。你会得到两个对象。只需比较它们的长度即可;)

var allDivs = $("div");
var classedDivs = $("div.on");

var allDivsHaveClass = (allDivs.length === classedDivs.length);

然后...

if (allDivsHaveClass) {
allDivs.removeClass("on");
}

这将只删除 on 类。如果您还想删除其他类,您可以清除 div 的类属性,如下所示:

allDivs.attr("class", "");

关于javascript - 我如何查看我的所有 Div 是否都有类(class)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25900468/

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