Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/82.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选择div元素并更改背景颜色?_Javascript_Html_Css - Fatal编程技术网

如何使用JavaScript选择div元素并更改背景颜色?

如何使用JavaScript选择div元素并更改背景颜色?,javascript,html,css,Javascript,Html,Css,所以,在我的网站上,我有一个包含表单的弹出模式。表单有5个div,其中包含图片和说明。我在w3schools上找到了下面的JS代码,它允许我选择一个div并为它提供我想要的样式。但是,当我第一次打开模式时,选择了一个div。但我不希望任何人被选中。我不知道如何修改此代码以使其最初不选择div // When user clicks an div, add background var divs = document.getElementsByClassName("

所以,在我的网站上,我有一个包含表单的弹出模式。表单有5个div,其中包含图片和说明。我在w3schools上找到了下面的JS代码,它允许我选择一个div并为它提供我想要的样式。但是,当我第一次打开模式时,选择了一个div。但我不希望任何人被选中。我不知道如何修改此代码以使其最初不选择div

      // When user clicks an div, add background
      var divs = document.getElementsByClassName("mood-state");
      for (var i = 0; i < divs.length; i++) {
        divs[i].addEventListener("click", function () {
          var current = document.getElementsByClassName("active");
          current[0].className = current[0].className.replace(" active", "");
          this.className += " active";
        });
      }
//当用户单击div时,添加背景
var divs=document.getElementsByClassName(“情绪状态”);
对于(变量i=0;i
这是模态中的一些div

            <div class="mood-state">
              <img src="neutral.svg" alt="" />
              <p>Neutral</p>
            </div>
            <div class="mood-state">
              <img src="smile.svg" alt="" />
              <p>Pleasant</p>
            </div>
            <div class="mood-state active">
              <img src="grin.svg" alt="" />
              <p>Very Pleasant</p>
            </div


中立的

愉快的

非常愉快


删除HTML中的
活动类。有了它,它一开始就处于活动状态

<div class="mood-state active"> <-- You have the active class here
  <img src="grin.svg" alt="" />
  <p>Very Pleasant</p>
</div>

删除HTML中的
活动类。有了它,它一开始就处于活动状态

<div class="mood-state active"> <-- You have the active class here
  <img src="grin.svg" alt="" />
  <p>Very Pleasant</p>
</div>

这不起作用。我想,由于我删除了div中的活动类,getElementsByClassName将无法找到div,因为它最初没有该类???@clanclan我有几个拼写错误,忘记了将元素节点列表转换为数组,现在应该可以了。这不起作用。我想,由于我删除了div中的活动类,getElementsByClassName将无法找到div,因为它最初没有该类???@clanglan我有几个拼写错误,忘记了将元素节点列表转换为数组,现在应该可以工作了