我正在为《魔兽世界》建立一个简单的统计计算器。这个想法是您选择一个类,然后在输入中输入一些值。随着每个值的更改(我为此使用了更改和键入),结果“计算”也将显示在表格下方。很高兴我已经走了这么远,现在只想再进一步。
我正在使用香草JS和jQuery。这是我的小提琴。 https://jsfiddle.net/ejnLbyug/
如果用户将其留空,我想在HTML中隐藏元素。例如,现在,当用户将“ Stamina”框留为空白时,其“命中点”结果仍显示为+0。
我不想显示+0,而是宁愿完全隐藏它(如果该输入框为空)。我如何才能对所有用inner.HTML打印的“结果”执行此操作?因此,直到用户实际上在任何输入框中键入大于0的数字为止,元素才被隐藏。
例如,我尝试了以下耐力输入:
if (stamina === 0) { return;
} else {
document.getElementById('staminaresult').innerHTML = ('+' + stamina + ' Hit Points')
}
但这似乎不起作用。有什么想法吗?
答案 0 :(得分:1)
我已经在您的文档上尝试过此代码,并且可以正常工作,例如,我将其隐藏的结果之一
if(this.intellect > 0) {
document.getElementById('intellectresult').innerHTML = ('+' + intellect + ' Mana');
}
在这里,我使用window
来获取更新后的当前状态(这对于更新工作正常)
window.intellect = intellect * 15; }
// Intellect - mana result
if(window.intellect > 0) {
return document.getElementById('intellectresult').innerHTML = ('+' +
window.intellect + ' Mana');
}
但是您需要将此条件添加到每个document.innerHTML
中,我发现这样做不好,请尝试使代码更短