首页 > 解决方案 > 使用节点列表改变页面的背景颜色

问题描述

我正在尝试创建两个函数,当输入框(颜色选择器)的值发生更改时,它们将更改我的 HTML 页面的背景颜色。

这是我的 JavaScript:

function backgroundColor() {
  let bod = document.getElementsByTagName("body")[0];
  let bgc = document.getElementById('bgColor');

  bgc.addEventListener("change", function(){
    color(bod, bgColor.value);
  });
}

function color(node, color){
  for (let n of node){
    n.style.backgroundColor = color;
  }
}

和 HTML:

<p>Background Color: <input type="color" id="bgColor" value="#FFFFFF"/></p>

我不确定如何格式化,如果不清楚,请见谅!

标签: javascripthtml

解决方案


addEventListener 回调有一个事件参数,其中包含输入值,所以函数应该是这样的

 bgc.addEventListener("change", function(event){
    bod.style.backgroundColor  = event.target.value;
  });

不需要循环。


推荐阅读