如何在Javascript中更改HTML输入元素的焦点

如何在Javascript中更改HTML输入元素的焦点,javascript,focus,Javascript,Focus,我有一个输入条。当有人点击输入栏时,我想改变它的颜色,但我想用Javascript来做。我该怎么做 输入您的姓名: 当输入字段获得焦点时,会触发一个改变背景颜色的函数 函数myFunctionx{ x、 style.background=黄色; } 函数bluedx{ document.getElementById'abc'.style.background=white; } 这将改变输入的背景颜色,使用纯JavaScript而不使用CSS <input type="text">

我有一个输入条。当有人点击输入栏时,我想改变它的颜色,但我想用Javascript来做。我该怎么做

输入您的姓名: 当输入字段获得焦点时,会触发一个改变背景颜色的函数

函数myFunctionx{ x、 style.background=黄色; } 函数bluedx{ document.getElementById'abc'.style.background=white; }
这将改变输入的背景颜色,使用纯JavaScript而不使用CSS

<input type="text">
<input type="text">
<input type="text">

<script>
  var inp = document.getElementsByTagName('input');
  for(var i = 0; i < inp.length; i++){
    inp[i].addEventListener('focus', function(){
      this.style.background = "red"
    }.bind(inp[i]))

    inp[i].addEventListener('blur', function(){
      this.style.background = "none"
    }.bind(inp[i]))
  }
</script>

它在每个输入元素中循环,添加两个事件侦听器,一个用于有焦点时,另一个用于失去焦点模糊时,这会触发这些事件并设置它们的样式。

因此,添加焦点事件……在纯香草JS中有什么方法可以做到这一点吗?这可以做到吗,当我离开输入栏单击时,焦点消失了?这基本上是我想要的,但我需要在javascript中更改背景颜色,而不是CSS。可以这样做吗?是的,我修改了代码使它可以这样做。不再需要.focus方法。