Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.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更改背景_Javascript_Html_Events_Event Listener - Fatal编程技术网

如何使用事件侦听器使用javascript更改背景

如何使用事件侦听器使用javascript更改背景,javascript,html,events,event-listener,Javascript,Html,Events,Event Listener,这是我的HTML和Javascript,我决定不包括我的CSS,因为我认为它不需要。我的代码的目的是创建一个切换开关(如设置应用程序中的iPhone设置),然后使用javascript添加一个事件侦听器。我使侦听器应用于button元素。当我单击按钮时,函数start()应该激活,正如您所看到的,当onclick事件启动时,toggle函数应该激活。当按下按钮时,应更改背景色。然而,它只是不改变颜色。好像切换调用不起作用。我可以单独调用切换函数,但这会在页面加载时更改颜色。当我点击按钮时,它应该

这是我的HTML和Javascript,我决定不包括我的CSS,因为我认为它不需要。我的代码的目的是创建一个切换开关(如设置应用程序中的iPhone设置),然后使用javascript添加一个事件侦听器。我使侦听器应用于button元素。当我单击按钮时,函数start()应该激活,正如您所看到的,当onclick事件启动时,toggle函数应该激活。当按下按钮时,应更改背景色。然而,它只是不改变颜色。好像切换调用不起作用。我可以单独调用切换函数,但这会在页面加载时更改颜色。当我点击按钮时,它应该可以工作。谢谢你能帮助我的人

<!DOCTYPE html>
<html>

<head>
  <title>Light Switch</title>
  <link rel="stylesheet" href="light.css" />
</head>

<body id="body">

  <button id="submit">Submit
    <label id="switch">
      <input type="checkbox" checked>
      <span class="slider"></span>
    </label>
  </button>
  <script src="light.js"></script>

</body>
</html>


//This js file was separate from my HTML file and was linked

function start() {
  var submit = document.getElementById("submit");
  submit.addEventListener("onclick", toggle);
};

function toggle() {
  var color = document.getElementById("body");
  color.style.backgroundColor = "black";
};

start();

电灯开关
提交
//这个js文件与我的HTML文件是分开的,并且是链接的
函数start(){
var submit=document.getElementById(“提交”);
submit.addEventListener(“onclick”,切换);
};
函数切换(){
var color=document.getElementById(“主体”);
color.style.backgroundColor=“黑色”;
};
start();

onclick
更改为仅
单击
。在这种情况下,似乎不需要
start()
功能

document.getElementById(“提交”).addEventListener(“单击”,切换);
函数切换(){
console.log('c')
document.getElementById(“body”).style.backgroundColor=“黑色”;
};

提交

事件名称是“单击”,而不是“onclick”。感谢您的回复,我知道onclick也是一个事件。我的编程老师告诉我们使用onclick。在devtools窗口中,它显示添加了onclick事件。我将尝试点击事件tho,看看这是否会有所不同。;他说的是HTML中的onclick事件。但这在JavaScript中不起作用,相当于onclick的是click。我不明白为什么我的网络编程老师告诉我们使用onclick。但是谢谢你的帮助。onclick有没有办法奏效?我知道这是一个事件,我以前用它来启动一个我用JavaScriptDam编写的游戏,我很不走运,这是我的导师第一年教的,它显示了lol。他和我在一起冷了30分钟,但他无法理解。@programming\u天哪,如果这个答案有用的话,请点击勾号接受答案,我将不胜感激