Как написать калькулятор?
Пытаюсь написать браузерный калькулятор, но пока не получается. Подскажите, пожалуйста, почему задумка находить элемент по классу, брать его значение и выводить на строку ввода текста не работает?
P.S. Сразу помидорами мой говнокод не закидывайте, пожалуйста))
function search() {
document.querySelector();
}
function click() {
let x = search('.btn').value;
search('.input').innerHTML(x);
}
<div class="calcBody">
<div class="expression">
<input type="text" class="input">
</div>
<div class="operators">
<input type="button" class="btn" id="btn-1" value="7" onclick="click(this)"></input>
<input type="button" class="btn" id="btn-2" value="8" onclick="click(this)"></input>
<input type="button" class="btn" id="btn-3" value="9" onclick="click(this)"></input>
<input type="button" class="btn" id="btn-4" value="+" onclick="click(this)"></input>
<input type="button" class="btn" id="btn-5" value="4" onclick="click(this)"></input>
<input type="button" class="btn" id="btn-6" value="5" onclick="click(this)"></input>
<input type="button" class="btn" id="btn-7" value="6" onclick="click(this)"></input>
<input type="button" class="btn" id="btn-8" value="-" onclick="click(this)"></input>
<input type="button" class="btn" id="btn-9" value="1" onclick="click(this)"></input>
<input type="button" class="btn" id="btn-10" value="2" onclick="click(this)"></input>
<input type="button" class="btn" id="btn-11" value="3" onclick="click(this)"></input>
<input type="button" class="btn" id="btn-12" value="*" onclick="click(this)"></input>
<input type="button" class="btn" id="btn-13" value="0" onclick="click(this)"></input>
<div class="btn-14"></div>
<div class="btn-15"></div>
<input type="button" class="btn" id="btn-16" value="/"></input>
</div>
</div>
Ответы (1 шт):
Автор решения: Igor
→ Ссылка
function btnClick(btn) {
var expression = document.querySelector('.input');
expression.value += btn.value;
}
function btnEval() {
var expression = document.querySelector('.input');
expression.value = eval(expression.value);
}
<div class="calcBody">
<div class="expression">
<input type="text" class="input"/>
</div>
<div class="operators">
<input type="button" class="btn" id="btn-1" value="7" onclick="btnClick(this)"/>
<input type="button" class="btn" id="btn-2" value="8" onclick="btnClick(this)"/>
<input type="button" class="btn" id="btn-3" value="9" onclick="btnClick(this)"/>
<input type="button" class="btn" id="btn-4" value="+" onclick="btnClick(this)"/>
<br/>
<input type="button" class="btn" id="btn-5" value="4" onclick="btnClick(this)"/>
<input type="button" class="btn" id="btn-6" value="5" onclick="btnClick(this)"/>
<input type="button" class="btn" id="btn-7" value="6" onclick="btnClick(this)"/>
<input type="button" class="btn" id="btn-8" value="-" onclick="btnClick(this)"/>
<br/>
<input type="button" class="btn" id="btn-9" value="1" onclick="btnClick(this)"/>
<input type="button" class="btn" id="btn-10" value="2" onclick="btnClick(this)"/>
<input type="button" class="btn" id="btn-11" value="3" onclick="btnClick(this)"/>
<input type="button" class="btn" id="btn-12" value="*" onclick="btnClick(this)"/>
<br/>
<input type="button" class="btn" id="btn-13" value="0" onclick="btnClick(this)"/>
<input type="button" class="btn" id="btn-16" value="/" onclick="btnClick(this)"/>
<br/>
<input type="button" class="btn" id="btn-13" value="=" onclick="btnEval()"/>
</div>
</div>