【发布时间】:2021-01-17 12:03:59
【问题描述】:
我不确定我对这个问题的标题是否有意义(如果没有,请提出建议);
所以我在 HTML 中有这个非常简单的例子:
<button class="btn" type="button"> button1 </button>
<button class="btn" type="button"> button2 </button>
在 JS 中:
window.onload = () => {
var buttons = document.querySelectorAll('.btn');
buttons.forEach((btn) => {
btn.addEventListener('click', () => {
if (btn.innerHTML === 'button1') {
btn.style.background = 'green';
console.log('Button1 is clicked');
} else {
btn.style.background = 'red';
console.log('Button2 is clicked');
}
});
});
}
我认为它的行为会像预期的那样;但 我点击的任何按钮,它的背景都会变成红色。
你能解释一下为什么会这样吗?
非常感谢。
【问题讨论】:
-
您的意思是使用
btn.innerHTML === '1'吗?内部html不会是'button1'吗?
标签: javascript events innerhtml