如果语句条件改变元素的样式?

时间:2018-08-30 11:55:28

标签: javascript css input

如果function具有input,则我有以下打算执行border-color: red;的Javascript,如下所示:

if (input.style.borderColor = "red") {
  input.onkeydown = function () {
    input.style.borderColor = "black";
  };
};

尽管发生的是if条件(input.style.borderColor = "red")实际上将border-color更改为红色,但我不确定为什么这样做。

如果有人知道为什么会这样,我将不胜感激。预先感谢!

1 个答案:

答案 0 :(得分:2)

之所以发生这种情况,是因为您的if语句中没有检查其红色是否将其分配给红色。一个=字符分配该值,而两个(或三个)=====对其进行检查。因此您的代码应为:

if (input.style.borderColor === "red") {
  input.onkeydown = function () {
    input.style.borderColor = "black";
  };
};