【发布时间】:2022-07-27 22:47:24
【问题描述】:
我是 JavaScript 和 DOM 的新手,因此我尝试编写一个程序,该程序在您单击按钮时显示文本,并在您再次单击按钮时更改文本。虽然程序按预期运行,但我收到 Bad Assignment 警告,因为我将一个函数分配给另一个函数,所以我想知道这样做是否不合适以及是否有更好的方法正在做。这是下面的代码,在 thirdClick() 函数中,我在其中进行了分配。
const body = document.body;
const btn = document.querySelector('#btn');
const firstClick = function() {
const h1 = document.querySelector('#h1');
btn.addEventListener('click', () => {
h1.innerText = 'I Am Injected Into This Page by JavaScript ????, Click the Button Again and see ????';
body.append(h1);
secondClick();
});
};
const secondClick = function() {
const h2 = document.querySelector('#h1');
btn.addEventListener('click', () => {
h2.innerText = 'Am also injected into this page by JavaScript cool right ????';
body.append(h2);
thirdClick();
});
};
const thirdClick = function() {
if (secondClick()) {
secondClick() = firstClick();
}
else {
firstClick();
}
};
firstClick();
【问题讨论】:
-
一个按钮可以有多个事件监听器。添加一个新的并不会删除已经存在的内容。因此,当您多次调用 firstClick 或 secondClick 时,您正在向按钮添加更多事件侦听器,这些事件侦听器将在您单击按钮时全部执行。
-
哦,我的眼睛。请编写更清晰的代码。
secondClick() = firstClick()到底是什么鬼。向元素添加一个侦听器,然后让计数器知道按钮被点击了多少次
标签: javascript