我有一个类,我使用Jquery添加背景颜色,但是一旦设置了颜色的值,我就会遇到问题,它会一直显示为undefined
到目前为止我的代码
// Highlight Paid
function highlightPaid() {
var color = $(this).closest(".course-paid").css("background-color");
alert(color);
if(color === undefined) {
$('.course-paid').css("background-color","#F3F315");
} else {
if(rgb2hex(color)=='#F3F315') {
$('.course-paid').css("background-color","transparent");
} else {
$('.course-paid').css("background-color","#F3F315");
}
}
}
// Convert RGB to HEX
function rgb2hex(rgb){
rgb = rgb.match(/^rgb((d+),s*(d+),s*(d+))$/);
return "#" + ("0" + parseInt(rgb[1],10).toString(16)).slice(-2) + ("0" + parseInt(rgb[2],10).toString(16)).slice(-2) + ("0" + parseInt(rgb[3],10).toString(16)).slice(-2);
}
有没有人对我如何解决这个问题和/或改进这些代码有任何建议?
修改
好的,所以我在它们上面有一些类course-paid
的div,然后我的页面上有一个按钮,当我点击它时,我想在具有该类的div上切换背景颜色。因此,如果它没有背景颜色,我希望它具有值#F3F315
,如果它具有该颜色,我想删除背景颜色。
答案 0 :(得分:0)
我最终使用以下代码
function highlightPaid() {
$('.course-paid').each(function( i ) {
if (this.style.backgroundColor == '') {
this.style.backgroundColor = "#F3F315";
} else {
this.style.backgroundColor = '';
}
});
}