Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.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 css()if语句,超时字符串为';不行吗?_Javascript_Jquery - Fatal编程技术网

Javascript css()if语句,超时字符串为';不行吗?

Javascript css()if语句,超时字符串为';不行吗?,javascript,jquery,Javascript,Jquery,我正在处理这个导航栏,当bgColor为真时,它需要将背景色更改为rgba(15,18,65,0.9) 但是当bgColor不正确时,背景颜色需要改变。这是可行的,但它太快了,所以我想对它进行延迟,但由于某些原因,它不会返回字符串并更改背景颜色 如果我记录颜色而不是返回它,它工作正常。那么我在这里误解了什么?它只需要延迟假颜色选项 $(".navbar-dark") .css("background-color", bgColor ? "rgba(15,18,65,0.9)" :

我正在处理这个导航栏,当bgColor为真时,它需要将背景色更改为rgba(15,18,65,0.9)

但是当bgColor不正确时,背景颜色需要改变。这是可行的,但它太快了,所以我想对它进行延迟,但由于某些原因,它不会返回字符串并更改背景颜色

如果我记录颜色而不是返回它,它工作正常。那么我在这里误解了什么?它只需要延迟假颜色选项

$(".navbar-dark")
   .css("background-color", bgColor ? "rgba(15,18,65,0.9)" : 
         setTimeout(function(){return "rgba(15,18,65,0)";}, 1000) 
       );

只需设置变量,然后使用空值返回函数:

$(".navbar-dark").css("background-color", bgColor ? "rgba(15,18,65,0.9)" : 
     setTimeout(function(){bgColor = "rgba(15,18,65,0)"; return;}, 1000) 
 );

只需设置变量,然后使用空值返回函数:

$(".navbar-dark").css("background-color", bgColor ? "rgba(15,18,65,0.9)" : 
     setTimeout(function(){bgColor = "rgba(15,18,65,0)"; return;}, 1000) 
 );

使用
if
并将
setTimeout()
放入
else
块中

if (bgColor) {
    $(".navbar-dark").css("background-color", "rgba(15,18,65,0.9)")
} else {
    setTimeout(function () {
        $(".navbar-dark").css("background-color", "rgba(15,18,65,0)");
    }, 1000);
}

使用
if
并将
setTimeout()
放入
else
块中

if (bgColor) {
    $(".navbar-dark").css("background-color", "rgba(15,18,65,0.9)")
} else {
    setTimeout(function () {
        $(".navbar-dark").css("background-color", "rgba(15,18,65,0)");
    }, 1000);
}

与另一种方法类似,您可以使用JQuery的delay()方法,如下所示:

if (bgColor)
    $(".navbar-dark").css("background-color", "rgba(15,18,65,0.9)");
else
    $(".navbar-dark").delay(1000).css("background-color", "rgba(15,18,65,0)");

与另一种方法类似,您可以使用JQuery的delay()方法,如下所示:

if (bgColor)
    $(".navbar-dark").css("background-color", "rgba(15,18,65,0.9)");
else
    $(".navbar-dark").delay(1000).css("background-color", "rgba(15,18,65,0)");

你可以在这里检查这个答案,但它不包括颜色透明度。你可以在这里检查这个答案,但它不包括颜色透明度。这是有效的,我想尝试写得尽可能紧凑,但嘿,如果它能工作的话。这是有效的,我想尝试写得尽可能紧凑,但嘿,如果它能工作的话。