【发布时间】:2021-12-25 10:17:57
【问题描述】:
从我的代码中可以看出,我是编程和 JS 的新手。页面上的背景颜色和文本会根据单击的目标 <li> 标记而变化,可能是函数、对象、数组或使用 eventListeners 和事件处理程序的 if 语句。
我在这里寻找灵感,以便最终了解编程的真正工作原理。
在下面查看我的代码。
let navLink1 = document.querySelector('color1');
let navLink2 = document.querySelector('color2');
let navLink3 = document.querySelector('color3');
let navLink4 = document.querySelector('color4');
let p1 = document.querySelector('para');
navLink1.addEventListener('click', function (e) {
document.body.style.background = "color1";
document.innerHTML(p1) = "New text!";
});
navLink2.addEventListener('click', function (e) {
document.body.style.background = "color2";
document.innerHTML(p1) = "New text!";
});
navLink3.addEventListener('click', function (e) {
document.body.style.background = "color3";
document.innerHTML(p1) = "New text!";
});
navLink4.addEventListener('click', function (e) {
document.body.style.background = "color4";
document.innerHTML(p1) = "New text!";
});
<ul class ='nav'>
<li class ='color1'><a href=''>color1</a></li>
<li class ='color2'><a href=''>color2</a></li>
<li class ='color3'><a href=''>color3</a></li>
<li class ='color4'><a href=''>color4</a></li>
</ul>
<h2>The text in the <p> tag below changes according to clicked link in the menu</h2>
<p class ='para'>This is (color)</p>
<!-- if color1 is clicked in the menu then the <body> background will be changed to color1 and the innerHTML will also be changed to color1. The background color and targeted text changes according to the menu item clicked ->
【问题讨论】:
-
欢迎来到 Stack Overflow!请使用tour(您将获得徽章!),环顾四周,并通读help center,尤其是How do I ask a good question?,我还推荐Jon Skeet 的Writing the Perfect Question 和Question Checklist。实际的问题是什么? “寻找灵感”对于 SO 的问答形式来说太模糊了。问题是标题吗? “想要一个函数/事件处理程序来做同样的事情”?
标签: javascript dom-events javascript-objects