Js实现简单计算器
来源:互联网 发布:全国浓缩料2016数据 编辑:程序博客网 时间:2024/06/09 17:51
自己写的一个简单的计算器,效图如下:
大致思路:每个按钮都是对表达式的文本内容的修改,最后利用eval()函数计算表达式的值。
源代码如下:
<!DOCTYPE html><html><head><title>Caculator</title><style type="text/css"> .content { display: block; position: relative; top: 150px; width: 400px; left: 30%; font-family: Consolas; font-weight: lighter; font-size: 16px; } .monitor { width: 400px; border: solid 1px black; text-align: right; background-color: #f7f7f7; } .monitor input { border: none; font-size: 30px; text-align: right; width: 380px; padding: 5px; background-color: #f7f7f7; } .monitor #expression { font-size: 32px; height: 50px; } .monitor #result { color: red; } .keyboard { width: 400px; display: block; padding-top: 10px; padding-left: 5px; } .keyboard span { border: solid 1px #cccccc; margin: 0px; display: inline-block; width: 20%; height: 40px; text-align: center; padding: 15px 5px 5px 5px; cursor: pointer; } .keyboard span:hover { background-color: cornsilk; }</style></head><body><div class="content"> <div class="monitor"> <input id="expression" type="text" maxlength="200" multiple="1" value="0"> <input id="result" type="text" maxlength="100" value="0"> </div> <div class="keyboard"> <span>AC</span> <span>DEL</span> <span>/</span> <span>*</span> <span>7</span> <span>8</span> <span>9</span> <span>-</span> <span>4</span> <span>5</span> <span>6</span> <span>+</span> <span>1</span> <span>2</span> <span>3</span> <span>=</span> <span>%</span> <span>0</span> <span>.</span> </div></div><script type="text/javascript">var btns = document.getElementsByTagName('span');var experssion = document.getElementById('expression');var result = document.getElementById('result');for (var i = 0;i < btns.length;i++) { var btn = btns[i]; var content = btn.innerHTML.trim(); switch (content) { case 'AC': btn.style.color = 'red'; btn.onclick = function () { experssion.value = '0'; result.value = '0'; }; break; case 'DEL': btn.onclick = function () { if (experssion.value.length <= 1) { experssion.value = 0; } else { experssion.value = experssion.value.slice(0, -1); } }; break; case '=': btn.style = 'height:102px;float:right;right:5px;position:relative;line-height:5em;'; btn.onclick = function () { try { result.value = eval(experssion.value).toString(); } catch (err) { result.value = '0'; experssion.value = '0'; } }; break; case '0':; case '1':; case '2':; case '3':; case '4':; case '5':; case '6':; case '7':; case '8':; case '9': btn.onclick = (function (cont) { return function () { if ('0' == experssion.value) { experssion.value = ''; } experssion.value += cont; } })(content); break; default: btn.onclick = (function (cont) { return function () { experssion.value += cont; } })(content); break; }}</script></body></html>
阅读全文
0 0
- js简单实现计算器
- js实现简单计算器
- js实现简单计算器
- Js实现简单计算器
- JS实现简单计算器
- Js实现简单计算器
- js实现简单的计算器
- js实现简单的计算器
- js实现简单的计算器代码
- html+js实现的简单计算器(加减乘除)
- js实现简单整数计算器-------Day71
- 简单的js实现的计算器
- js实现简单计算器(四则运算)
- JS简单计算器
- js简单计算器
- 简单的JS计算器
- JS的简单计算器
- js 简单计算器
- ImageView的scaleType属性
- JAVAFX2 如何在FXML获得ComboBox对象
- Vue实例的生命周期
- apache ant实现邮件发送
- 如何为click事件添加beforclick事件
- Js实现简单计算器
- 数据库视频总结 二
- java中静态代码块的用法 static用法详解
- oracle命名空间和用户的基本操作
- liunx命令
- C++简单学习、字符(串)字面值、声明和定义、引用和指针
- HDU-1222-Wolf and Rabbit
- ..
- 博弈问题的一些想法(菜鸟,不喜勿喷。。。)