Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery if/else语句不起作用_Javascript_Jquery_Html_If Statement_Conditional - Fatal编程技术网

Javascript jQuery if/else语句不起作用

Javascript jQuery if/else语句不起作用,javascript,jquery,html,if-statement,conditional,Javascript,Jquery,Html,If Statement,Conditional,对jQuery来说非常陌生,我不明白为什么这段代码不起作用。我将主体的背景设置为黑色,但我总是返回else语句,并且我的背景变成橙色而不是所需的粉色 $(document).ready(function(){ $("body").css("background","black"); if ($("body").css("background") == "black") { $("body").css("background", "pink");

对jQuery来说非常陌生,我不明白为什么这段代码不起作用。我将主体的背景设置为黑色,但我总是返回else语句,并且我的背景变成橙色而不是所需的粉色

$(document).ready(function(){
    $("body").css("background","black");
        if ($("body").css("background") == "black") {
            $("body").css("background", "pink");
        }
        else {
            $("body").css("background", "orange");
        }
});

你可以看到这里发生了什么:

你不能只要求像“背景”这样的复合CSS样式;该值作为空字符串返回。询问“背景色”。(编辑-Firefox给了我空字符串;其他浏览器可能会为您构建整个复合背景属性集。)

现在,一旦你解决了这个问题,你会发现报告的颜色不会是“黑色”。这将是一些其他颜色语法,意思是“黑色”

与其依赖样式机制来跟踪正在发生的事情,不如使用类:

$("body").addClass("black");
if ($("body").hasClass("black"))
  $("body").addClass("pink");
else
  $("body").addClass("orange");
然后在CSS中:

body.black { background-color: black; }
body.pink { background-color: pink; }
body.orange { background-color: orange; }

更好的方法是,对页面状态使用一些语义上有意义的名称,而不是颜色名称,这样,如果你以后改变主意,想让背景从一只狗变为一只小猫,代码仍然是有意义的。

你不能只要求像“background”这样的复合CSS样式;该值作为空字符串返回。询问“背景色”。(编辑-Firefox给了我空字符串;其他浏览器可能会为您构建整个复合背景属性集。)

现在,一旦你解决了这个问题,你会发现报告的颜色不会是“黑色”。这将是一些其他颜色语法,意思是“黑色”

与其依赖样式机制来跟踪正在发生的事情,不如使用类:

$("body").addClass("black");
if ($("body").hasClass("black"))
  $("body").addClass("pink");
else
  $("body").addClass("orange");
然后在CSS中:

body.black { background-color: black; }
body.pink { background-color: pink; }
body.orange { background-color: orange; }

更好的方法是,对页面状态使用一些语义上有意义的名称,而不是颜色名称,这样,如果你以后改变主意,想让背景从一只狗变为一只小猫,代码仍然是有意义的。

你不能只要求像“background”这样的复合CSS样式;该值作为空字符串返回。询问“背景色”。(编辑-Firefox给了我空字符串;其他浏览器可能会为您构建整个复合背景属性集。)

现在,一旦你解决了这个问题,你会发现报告的颜色不会是“黑色”。这将是一些其他颜色语法,意思是“黑色”

与其依赖样式机制来跟踪正在发生的事情,不如使用类:

$("body").addClass("black");
if ($("body").hasClass("black"))
  $("body").addClass("pink");
else
  $("body").addClass("orange");
然后在CSS中:

body.black { background-color: black; }
body.pink { background-color: pink; }
body.orange { background-color: orange; }

更好的方法是,对页面状态使用一些语义上有意义的名称,而不是颜色名称,这样,如果你以后改变主意,想让背景从一只狗变为一只小猫,代码仍然是有意义的。

你不能只要求像“background”这样的复合CSS样式;该值作为空字符串返回。询问“背景色”。(编辑-Firefox给了我空字符串;其他浏览器可能会为您构建整个复合背景属性集。)

现在,一旦你解决了这个问题,你会发现报告的颜色不会是“黑色”。这将是一些其他颜色语法,意思是“黑色”

与其依赖样式机制来跟踪正在发生的事情,不如使用类:

$("body").addClass("black");
if ($("body").hasClass("black"))
  $("body").addClass("pink");
else
  $("body").addClass("orange");
然后在CSS中:

body.black { background-color: black; }
body.pink { background-color: pink; }
body.orange { background-color: orange; }
更好的方法是,对页面状态使用一些语义上有意义的名称,而不是颜色名称,这样,如果你以后改变主意,想让背景从一只狗变成一只小猫,代码仍然有意义。

修复方法很简单<代码>$(“正文”).css(“背景色”、“黑色”)!=“黑色”。相反,它等于rgb(0,0,0)。在CSS中,“黑色”不是真正的颜色。相反,它会转换为
rgb()
颜色。要解决此问题,请执行以下操作:

$(document).ready(function(){
    $("body").css("background-color","black");
    console.log($("body").css("background-color"))
    if ($("body").css("background-color") == "rgb(0, 0, 0)") {
        $("body").css("background-color", "pink");
    }
    else {
        $("body").css("background-color", "orange");
    }
});
解决办法很简单<代码>$(“正文”).css(“背景色”、“黑色”)!=“黑色”。相反,它等于rgb(0,0,0)。在CSS中,“黑色”不是真正的颜色。相反,它会转换为
rgb()
颜色。要解决此问题,请执行以下操作:

$(document).ready(function(){
    $("body").css("background-color","black");
    console.log($("body").css("background-color"))
    if ($("body").css("background-color") == "rgb(0, 0, 0)") {
        $("body").css("background-color", "pink");
    }
    else {
        $("body").css("background-color", "orange");
    }
});
解决办法很简单<代码>$(“正文”).css(“背景色”、“黑色”)!=“黑色”。相反,它等于rgb(0,0,0)。在CSS中,“黑色”不是真正的颜色。相反,它会转换为
rgb()
颜色。要解决此问题,请执行以下操作:

$(document).ready(function(){
    $("body").css("background-color","black");
    console.log($("body").css("background-color"))
    if ($("body").css("background-color") == "rgb(0, 0, 0)") {
        $("body").css("background-color", "pink");
    }
    else {
        $("body").css("background-color", "orange");
    }
});
解决办法很简单<代码>$(“正文”).css(“背景色”、“黑色”)!=“黑色”。相反,它等于rgb(0,0,0)。在CSS中,“黑色”不是真正的颜色。相反,它会转换为
rgb()
颜色。要解决此问题,请执行以下操作:

$(document).ready(function(){
    $("body").css("background-color","black");
    console.log($("body").css("background-color"))
    if ($("body").css("background-color") == "rgb(0, 0, 0)") {
        $("body").css("background-color", "pink");
    }
    else {
        $("body").css("background-color", "orange");
    }
});

css“background”提供了完整的背景参数,它看起来像:

"rgb(0,0,0) none repeat scroll..."
如果只想检查颜色,则需要指定要使用颜色属性,并根据实际使用的值对其进行测试,而不是实际要测试rgb颜色值的“黑色”:

if ($('body').css("background-color") == "rgb(0, 0, 0)")

css“background”提供了完整的背景参数,它看起来像:

"rgb(0,0,0) none repeat scroll..."
如果只想检查颜色,则需要指定要使用颜色属性,并根据实际使用的值对其进行测试,而不是实际要测试rgb颜色值的“黑色”:

if ($('body').css("background-color") == "rgb(0, 0, 0)")

css“background”提供了完整的背景参数,它看起来像:

"rgb(0,0,0) none repeat scroll..."
如果只想检查颜色,则需要指定要使用颜色属性,并根据实际使用的值对其进行测试,而不是实际要测试rgb颜色值的“黑色”:

if ($('body').css("background-color") == "rgb(0, 0, 0)")

css“background”提供了完整的背景参数,它看起来像:

"rgb(0,0,0) none repeat scroll..."
如果只想检查颜色,则需要指定要使用颜色属性,并根据实际使用的值对其进行测试,而不是实际要测试rgb颜色值的“黑色”:

if ($('body').css("background-color") == "rgb(0, 0, 0)")

很容易理解它失败的原因:
console.log($(“body”).css(“background”)颜色通常以
rgb
格式返回,而不是
hex
。这