使用JQuery更改悬停类
我正在探索一种方法来更改div的背景颜色,或者在选中选择框时更改其类别。我想不出来,因为我不明白最好的方法是什么。我复制了我在这里所做的工作: 因此,通过选中上述复选框,可以更改以下div的背景颜色:使用JQuery更改悬停类,jquery,css,Jquery,Css,我正在探索一种方法来更改div的背景颜色,或者在选中选择框时更改其类别。我想不出来,因为我不明白最好的方法是什么。我复制了我在这里所做的工作: 因此,通过选中上述复选框,可以更改以下div的背景颜色: <div class="item cp sp cf bb" id="launDroid"> <a href="" class="bgRed"> <div class="content"> <h2>Laundroid
<div class="item cp sp cf bb" id="launDroid">
<a href="" class="bgRed">
<div class="content">
<h2>Laundroid</h2>
<p>Laundry That Does Itself</p>
<div class="tileFooter">Category</div>
</div>
</a>
</div>
背景色属于to bgRed类别。我想知道是否选中了上面的复选框,它可以将bgRed类更改为bgback,这将是一个黑色背景?是的,jQuery可以删除一个类并用另一个类替换它:
$('a').removeClass('bgRed').addClass('bgBlack');
是的,jQuery可以删除一个类并用另一个类替换它:
$('a').removeClass('bgRed').addClass('bgBlack');
您可以监视更改事件,并根据需要更新DOM的其余部分。此外,标签上的for属性应该是要应用它的输入的id,而不是name属性
$'cp'。关于'change',函数{
如果$this.is':选中'{
$'.bgRed'.addClass'bglack';
}否则{
$'.bgRed'.removeClass'bgBlack';
}
}
.项目{
宽度:300px;
高度:300px;
边际:0px;
浮动:左;
位置:相对位置;
背景位置:中心;
背景重复:无重复;
背景大小:100%;
}
.项目a{
身高:100%;
宽度:100%;
位置:绝对位置;
}
.项目:悬停a.bgRed{
背景色:rgba232,43,71,0.9;
}
.项目:悬停a.BG黑色{
背景:黑色;
}
沙发土豆您可以监视更改事件,并根据需要更新DOM的其余部分。此外,标签上的for属性应该是要应用它的输入的id,而不是name属性
$'cp'。关于'change',函数{
如果$this.is':选中'{
$'.bgRed'.addClass'bglack';
}否则{
$'.bgRed'.removeClass'bgBlack';
}
}
.项目{
宽度:300px;
高度:300px;
边际:0px;
浮动:左;
位置:相对位置;
背景位置:中心;
背景重复:无重复;
背景大小:100%;
}
.项目a{
身高:100%;
宽度:100%;
位置:绝对位置;
}
.项目:悬停a.bgRed{
背景色:rgba232,43,71,0.9;
}
.项目:悬停a.BG黑色{
背景:黑色;
}
沙发土豆你需要做的是设置一个手表,当切换被更改时,然后检查属性是否被选中。您可以使用jQuery实现这一点。我在这里更新了JSFIDLE: 也请参考此处的这个问题,了解如何检查是否使用jQuery选中了复选框: jQuery使复选框将背景从黑色切换为白色:
$('#cp').click(function() {
if($('#cehcekc').prop('checked')) {
$('.bgRed').css('background-color','#000');
} else {
$('.bgRed').css('background-color','#fff');
}
});
您需要做的是设置切换更改时的监视,然后检查是否选中该属性。您可以使用jQuery实现这一点。我在这里更新了JSFIDLE: 也请参考此处的这个问题,了解如何检查是否使用jQuery选中了复选框: jQuery使复选框将背景从黑色切换为白色:
$('#cp').click(function() {
if($('#cehcekc').prop('checked')) {
$('.bgRed').css('background-color','#000');
} else {
$('.bgRed').css('background-color','#fff');
}
});
但是我该如何定位这个div,比如它的方法是什么?$'launDroid a'。removeClass'bgRed'。addClass'bblack';将更改div中元素的类,具体来说。这就是你的意思吗?请注意,一个较短的书写方式是toggleClass'bgRed bgbblack'。@MikeMcCaughan我想你的意思是toggleClass'bgRed','bgbblack'意思是我说的:。请参见第一个重载,一个或多个由空格分隔的类名将为匹配集中的每个元素切换。但是如何将该div作为目标,如方法是什么?$'launDroid a'。removeClass'bgRed'。addClass'bgBlack';将更改div中元素的类,具体来说。这就是你的意思吗?请注意,一个较短的书写方式是toggleClass'bgRed bgbblack'。@MikeMcCaughan我想你的意思是toggleClass'bgRed','bgbblack'意思是我说的:。请参见第一个重载,一个或多个类名之间用空格分隔,以便为匹配集中的每个元素切换。这几乎就是我要查找的内容,但我希望黑色作为悬停而不是红色,但不能替换非悬停背景。它似乎不完全适用于其他复选框,我带你去看看你能不能帮我?@PhpDude如果你有新问题,你应该写一篇新文章。在你已经接受答案之后,评论部分不是我们处理问题范围之外的事情的地方。问题是人们开始投票。将其标记为副本等。感谢您的帮助,尽管Mark我非常感谢。这几乎就是我要寻找的,但我希望黑色作为悬停背景,而不是红色,但不替换非悬停背景。它似乎不完全适用于其他复选框,我带你去看看你能不能帮我?@PhpDude如果你有新问题,你应该写一篇新文章。在你已经接受答案之后,评论部分不是我们处理问题范围之外的事情的地方。问题是人们开始投票。将其标记为副本等。谢谢您的帮助
尽管马克,我还是很感激。恐怕我不是在追求这个。我可以做到这一点,但目标是当我悬停时,它将是红色的,当复选框被选中时,悬停背景颜色将变为黑色。我恐怕这不是我想要的。我可以做到这一点,但目标是当我悬停时,它将是红色的,当复选框被选中时,悬停背景颜色变为黑色。