【发布时间】:2020-01-21 00:01:06
【问题描述】:
我正在制作一个计算器应用程序作为我的第一个“真正的”编码项目。我知道网上有大量关于如何制作的教程,但我宁愿自己弄清楚如何将问题分解成更小的步骤。
话虽如此,我遇到了一个我自己似乎无法解决的问题。我按下的每个按钮都会将之前的值换成附加到该按钮的值。我正在努力了解如何对其进行编程,以便按下的每个按钮将两个值组合在一起。 (例如“1”和“2”=“12”)
有什么想法吗?
谢谢!
https://codepen.io/tphelps5/pen/GRgBMMZ?editors=1010
JavaScript
let reset = document.getElementById("reset"),
output = document.getElementById("output"),
calcButtons = document.getElementById("calc_buttons");
calcButtons.addEventListener("click", printNum, false);
function printNum(e) {
if (e.target !== e.currentTarget) {
let clickedItem = e.target.value;
output.innerHTML = clickedItem;
}
e.stopPropagation();
}
HTML
<HTML>
<h1> My First JavaScript Calculator </h2>
<div id="calculator">
<div id="calc_buttons">
<span id="output"></span>
<button class="operate" id="reset" value=" ">C</button>
<button class="num" id="seven" value="7">7</button>
<button class="num" id="eight" value="8">8</button>
<button class="num" id="nine" value="9">9</button>
<button class="operate" id="divide" value="/">/</button>
<button class="num" id="four" value="4">4</button>
<button class="num" id="five" value="5">5</button>
<button class="num" id="six" value="6">6</button>
<button class="operate" id="multiply" value="*">*</button>
<button class="num" id="one" value="1">1</button>
<button class="num" id="two" value="2">2</button>
<button class="num" id="three" value="3">3</button>
<button class="operate" id="minus" value="-">-</button>
<button class="num" id="zero" value="0">0</button>
<button class="operate" id="decimal" value=".">.</button>
<button class="operate" id="equals" value="=">=</button>
<button class="operate" id="plus" value="+">+</button>
</div>
</HTML>
【问题讨论】:
-
output.innerHTML = clickedItem应该是output.innerHTML += clickedItem
标签: javascript html css calculator