我在页面中有多个div,都使用相同的css
<div class="datumTijd">Speelronde 1</div>
<div class="clear"></div>
<div class="thuis wedstrijd" wedstrijdId="1" toto="1" ronde="1">PEC Zwolle</div>
<div class="vs wedstrijd" wedstrijdId="1" toto="2" ronde="1">X</div>
<div class="uit wedstrijd" wedstrijdId="1" toto="3" ronde="1">FC Utrecht</div>
<div class="vsScore">0</div>
<div class="thuis wedstrijd" wedstrijdId="2" toto="1" ronde="1">sc Heerenveen</div>
<div class="vs wedstrijd" wedstrijdId="2" toto="2" ronde="1">X</div>
<div class="uit wedstrijd" wedstrijdId="2" toto="3" ronde="1">FC Dordrecht</div>
<div class="vsScore">0</div>
当我点击带有'wedstrijd'类的div时,我会切换到另一个类
$("#teamStats .wedstrijd").click(function( ) {
console.log($(this).attr('wedstrijdId'));
console.log($(this).attr('toto'));
$( this ).toggleClass( "wedstrijdSelected" );
});
但现在我遇到了问题。选定的div应该使用'wedstrijdSelected'类。例如,我点击它可以工作的PEC Zwolle。这个div现在正在使用另一个类。但是当我点击FC Utrecht时,他们都使用'wedstrijdSelected'。我如何基于'wedstrijdId'属性只使用'wedstrijdSelected'一次。
答案 0 :(得分:1)
像...一样的东西。
$("#teamStats .wedstrijd").not(this).removeClass("wedstrijdSelected");
这将确保所有其他元素都关闭。这将阻止它取消选择你想要它的项目,即使是一纳秒。
答案 1 :(得分:0)
首先,您必须从可能拥有它的任何元素中删除该类,然后将其应用于新类。
$("#teamStats .wedstrijd").click(function( ) {
console.log($(this).attr('wedstrijdId'));
console.log($(this).attr('toto'));
$(".wedstrijd").removeClass("wedstrijdSelected");
$( this ).toggleClass( "wedstrijdSelected" );
});
答案 2 :(得分:0)
由于该类将出现在兄弟节点上,因此您可以在添加它之前将其从兄弟节点中删除:
$("#teamStats .wedstrijd").click(function(){
$(this).siblings('.wedstrijdSelected')
.removeClass('wedstrijdSelected')
.end()
.toggleClass('wedstrijdSelected');
});
答案 3 :(得分:0)
你应该在将所有孩子添加到一个孩子之前添加wedstrijdSelected
班级,以保持它只存在
$("#teamStats .wedstrijd").click(function( ) {
console.log($(this).attr('wedstrijdId'));
console.log($(this).attr('toto'));
$('#teamStats div').removeClass('wedstrijdSelected')
$( this ).addClass( "wedstrijdSelected" );
});