gpt4 book ai didi

jquery - .not(这个)不起作用?

转载 作者:行者123 更新时间:2023-12-01 06:19:37 25 4
gpt4 key购买 nike

Fiddle

我有这个基本的 Accordion ,它可以切换“ block ”类别。一切正常,除了$('.accordionInner').not(this).removeClass('block'); 中的 .not(this) 不起作用,因此您永远无法关闭所有的 Accordion 。我确信这是一个简单的修复,但我不知道我做错了什么。

HTML:

<div class="accordionHeading">
<p>Header</p>
</div>
<div class="accordionInner">
<p>Inner</p>
</div>
<div class="accordionHeading">
<p>Header</p>
</div>
<div class="accordionInner">
<p>Inner</p>
</div>

CSS:

.accordionHeading {
cursor: pointer;
background: yellow;
}
.accordionInner {
display: none;
}
.block {
display: block !important;
}

JS:

 $('body').on('click', '.accordionHeading', function(){
$('.accordionInner').not(this).removeClass('block');
$(this).next('.accordionInner').toggleClass('block');
});

最佳答案

事件位于标题上,因此 this 永远不会是任何“内部”元素。

使用在 not 中使用 next 获得的引用:

$('body').on('click', '.accordionHeading', function(){
var inner = $(this).next('.accordionInner');
$('.accordionInner').not(inner).removeClass('block');
inner.toggleClass('block');
});

关于jquery - .not(这个)不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15554175/

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