Javascript 如何删除已单击控件上的特定类?
我试图删除单击控件上的特定类,特别是我有以下html结构:Javascript 如何删除已单击控件上的特定类?,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我试图删除单击控件上的特定类,特别是我有以下html结构: <div id="resource"> <div class="selected"></div> <div class="selected"></div> </div> 这是css类: .selected { background-color: red; } 如何查看我是否单击某个div该类被正确添加,但如果我有一个具有类的div。已选择的类已设置
<div id="resource">
<div class="selected"></div>
<div class="selected"></div>
</div>
这是css类:
.selected {
background-color: red;
}
如何查看我是否单击某个div该类被正确添加,但如果我有一个具有类的div。已选择的类已设置,并单击没有该类的div,则代码不会删除其他div的类。为什么
这是。您的单击事件仅适用于所选的
类。您应该使用#资源div
单击,而不是。选择的。试着像下面这样
$(document).on('click', '#resource div', function() {
if ($(this).hasClass('selected')) {
$(this).removeClass('selected');
} else
{
$('#resource .selected').removeClass('selected');
$(this).addClass('selected');
}
});
$(文档).on('单击','.container',函数(){
$(this.toggleClass('selected');
})
将您的“所选”div类名更改为“container”或watu。
为那些具有“container”的div添加click listener,或者为tat div指定任何名称您可以通过添加一个额外的类来简化此过程。看这个。错误是所选类被删除。这意味着您的单击事件也将被删除。使用两个类可以解决这个问题
Javascript
$(document).on('click', '.item', function() {
$('.item').removeClass('selected');
$(this).addClass('selected'); //add class to the clicked control
});
Html
<div id="resource">
<div class="item">test</div>
<div class="item">test</div>
</div>
测试
测试
else将永远不会执行,因为一旦单击带有所选类的div,该类将被删除。第二次单击它将不会运行jQuery,因为它绑定到所选类?
$(document).on('click', '.item', function() {
$('.item').removeClass('selected');
$(this).addClass('selected'); //add class to the clicked control
});
<div id="resource">
<div class="item">test</div>
<div class="item">test</div>
</div>