Javascript 按钮单击更改背景

标签 javascript html css

当我按下按钮时,背景颜色没有改变。我做错了什么?

var body = document.getElementsByTagName("body");
var bgbutton = doucument.getElementById("bgchange");
bgbutton.onclick = function() {
  body.style.background-color = "green";
}
body {
  width: 600px;
  margin: 0 auto;
  background-color: #FF9500;
  padding: 0 20px 20px 20px;
}
<div id="wrapper"></div>
<button id="bgchange"></button>

最佳答案

document.getElementsByTagName 返回一个节点列表,因此您需要使用 [0] 从中选择一个元素:

var body = document.getElementsByTagName("body")[0];

但是,您可以使用一个特定的属性:

var body = document.body;

另外,您在以下行中有一个拼写错误:

var bgbutton = doucument.getElementById("bgchange");

...应该是文档...

并且,当用 JavaScript 编写时,样式属性名称采用驼峰式命名:

body.style.backgroundColor

...与它们在 CSS 中的编写方式相反(background-color)。

关于Javascript 按钮单击更改背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39109498/

相关文章:

javascript - 在 ondrag 事件期间,在 Firefox 中 pageX 和 pageY 始终设置为 0

html - 为什么我在下面有额外的间距.. IE6-7?

javascript - HTML/CSS 使用 z-index 将一个 DIV 放在其他之上

html - 无法摆脱两行之间的额外空间

javascript - 即使在 onload 之后,仍保持先前 jquery 全局变量的值不变

javascript - 替换 jQuery 或 javascript 中所有出现的字符

Javascript 'value' 属性

opera - box-shadow 导致 h-scrollbar 在 Opera 中显示

jquery - React-Redux 中的简单背景颜色更改

javascript - knockout 和doT.js : How to have templating with events