【发布时间】:2019-10-07 20:47:39
【问题描述】:
想要将活动类添加到选定的 div。目前我无法让它在取消选择活动类时删除它
var item = $('.item').click(function() {
item.removeClass('active');
$(this).addClass('active');
});
$(".item").on("click", function(e) {
//get curent description
let $desc = $(this).next(".desc");
// hide all other description execpt current
$(".desc").not($desc).hide();
// show or hide current description
$desc.css("display") == "none" ? $desc.show() : $desc.hide();
})
.container {
width: 95%;
margin: auto;
display: grid;
grid-template-columns: repeat(8, 1fr);
grid-auto-flow: row dense;
grid-gap: 0.5em;
}
.item,
.desc {
border: 1px solid grey;
height: 100px;
display: flex;
justify-content: center;
align-items: center;
font-size: 20px;
}
.desc {
display: none;
grid-column: 1 / -1;
}
.active {
background: rgba(100, 100, 100, 0.7);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="container">
<div class="item">1</div>
<div class="desc">Description 1</div>
<div class="item">2</div>
<div class="desc">Description 2</div>
<div class="item">3</div>
<div class="desc">Description 3</div>
<div class="item">4</div>
<div class="desc">Description 4</div>
<div class="item">5</div>
<div class="desc">Description 5</div>
<div class="item">6</div>
<div class="desc">Description 6</div>
</div>
我想将活动类添加到选定的描述框中 - 我无法正确删除活动类,即使我将它添加到函数以切换描述
【问题讨论】:
-
它似乎在 sn-p 中工作。
-
请注意
$('.item').click(function () {...和$('.item').on('click', function(e) {...都做同样的事情... -
@Barmar 如果您进行选择然后再次单击它,OP 想要删除该类以取消选择它
-
我自己就用
toggleClass...
标签: javascript jquery