Javascript 从js更改背景色

Javascript 从js更改背景色,javascript,jquery,css,background-color,Javascript,Jquery,Css,Background Color,我将通过onclick javascript函数设置元素的背景色。 我的代码是: function changeBg( el ) { if( $( el ).css( "background-color" ) === "rgb(255,255,0)" ) { $( el ).css( "background-color", "red" ); } else { $( el ).css( "background-color", "rgb(255

我将通过onclick javascript函数设置元素的背景色。 我的代码是:

function changeBg( el ) {
    if( $( el ).css( "background-color" ) === "rgb(255,255,0)" ) {
        $( el ).css( "background-color", "red" );
    }
    else {
        $( el ).css( "background-color", "rgb(255,255,0)" );
    }
}

此代码用于将默认背景色更改为黄色(rgb(255,255,0)),但不能从黄色更改为红色。始终跳过第一个条件

,以便更好地使用
toggleClass()
而不是在dom中与颜色值匹配

功能更改bg(el){
$(el).toggleClass('red')的
}
.red{
背景色:红色;
}
钮扣{
背景颜色:黄色;
}

更改
试试这个

$(文档).ready(函数(){
$('.container')。在('click',function()上{
var el=“.container”;
如果($(el).css(“背景色”)=“rgb(255,255,0)”){
$(el.css(“背景色”、“红色”);
}否则{
css(“背景色”、“rgb(255,255,0)”);
}
});
});
.container{
背景色:rgb(255,255,0);
}

试验

试试这个:

$(文档).ready(函数(){
$(“按钮”)。单击(函数(){
$(this.toggleClass('redColor');
})
})
按钮{
背景颜色:黄色;
}
.红颜色{
背景色:红色;
}


点击我我建议将jQuery对象放入变量中。而不是在每一行上创建一个新的jQuery对象。在比较之前,尝试捕获值会有所不同。由于正在解析为十六进制,而您的比较是rgb。因此,在比较字符串时,您尝试打印元素背景色的类型和值并返回字符串rgb(255255,0),请尝试在rgb值之间添加空格,因为这可能是问题所在。
$(el).css(“背景色”)==“rgb(255,255,0)”
你确定它没有返回带有空格的“rgb(255,255,0)”吗?由js引起的js/css需要停止:D应该使用它^^:)