提问者:小点点

使用if语句jquery更改颜色


为什么背景颜色不改成绿色?

var id;
id = setInterval(changeColor, 1000);

function changeColor(){
  var elem= $("#target");         

  var color = elem.css('background-color');
  if (color == 'rgb(255,0,0)')
    elem.css('background-color','green');
  else
    elem.css('background-color', 'red');
}

共2个答案

匿名用户

请尝试以下操作:

var id;
id = setInterval(changeColor, 1000);

function changeColor(){
  var elem= $("#target");         

  var color = elem.css('background-color');
  if (color == 'rgb(255, 0, 0)')
    elem.css('background-color','green');
  else
    elem.css('background-color', 'red');
}

if语句检查了错误的条件:'rgb(255,0,0)'vs'rgb(255,0,0)'

匿名用户

尝试检查rgba而不是RGB。

null

<html>

<head>
    <title>Change Color</title>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>

    <script>
       function changeColor(){
            var elem= $("#target");         
        
            var color = elem.css('background-color');
            
            if (color == 'rgba(0, 0, 0, 0)')
                elem.css('background-color','green');
            else
                elem.css('background-color', 'red');
           
        }

        $(document).ready(function () {
            var id;
            id = setInterval(changeColor, 1000);
        });
    </script>
</head>

<body>
   <div id="target">Welcome to JavaScript!!!</div>
    <!--.div-row -->


</body>