var goldCounter = document.getElementById("goldcounter");
var goldGenerator = document.getElementById("goldgenerator");
var gold = 0;
var goldperclick = 1;
goldCounter.innerHTML = 0;
function goldclick() {
goldCounter.innerHTML = gold + goldperclick;
}
goldGenerator.addEventListener("click", goldclick());

我使用此JS代码尝试将HTML段落的文本设置为每次单击按钮时的黄金值,但文本保持为1。为什么?

谢谢大家,现在可以使用! :D

最佳答案

您正在调用该函数,并将该结果传递给处理程序。您只需要传递函数而不调用它。

您还需要实际增加所需的黄金,否则它总是innerHTML = 0 + 1

function goldclick() {
   gold += goldperclick;
   goldCounter.innerHTML = gold;
}


goldGenerator.addEventListener("click", goldclick);

应该管用。

关于javascript - 为什么此JS的HTML文本没有更改?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41969405/

10-09 04:19