JavaScript编写简单的计算器


Posted in Javascript onNovember 25, 2015

本文实例讲述了JavaScript编写简单计算器的代码。分享给大家供大家参考。具体如下:
运行效果截图如下:

JavaScript编写简单的计算器

具体代码如下

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="utf-8">
 <title>计算器</title>
 <style>
  /*Basic reset*/
*{
 margin:0;
 padding:0;
 box-sizing: border-box;
 font: 14px Arial,sans-serif;
}
html{
 height:100%;
 background-color:lightslategrey;
}

#calculator{
 margin: 15px auto;
 width:330px;
 height:400px;
 border: 1px solid lightgray;
 background-color:darkgrey;
 padding:15px;
}

/*LOGO*/
.LOGO{
 height:20px;

}
.LOGO .name{
 float:left;
 line-height:30px;
}
.LOGO .verson{
 float:right;
 line-height:30px;
}
/*screen*/
#shuRu{
 margin-top:15px;
}
.screen{
 margin-top:5px;
 width:300px;
 height:40px;
 text-align: right;
 padding-right:10px;
 font-size:20px;
}
#keys{
 border:1px solid lightgray;
 height:223px;
 margin-top:25px;
 padding:8px;
}
#keys .last{
 margin-right:0px;
}
.footer{
 margin-top:20px;
 height:20px;
}
.footer .link{
 float:right;
}

#keys .buttons{
 float:left;
 width: 42px;
 height: 36px;
 text-align:center;
 background-color:lightgray;
 margin: 0 17px 20px 0;
}
 </style>
</head>
<body>
<div id="calculator">
 <div class="LOGO">
  <span class="name">简单的计算器</span>
  <span class="verson">@walker</span>
 </div>
 <div id="shuRu">
  <!--screen输入栏-->
  <div class="screen">
   <input type="text" id="screenName" name="screenName" class="screen">
  </div>
 </div>
 <div id="keys">
  <!-- j -->
  <!--第一排-->
  <input type="button" id="7" onclick="jsq(this.id)" value="7" class="buttons">
  <input type="button" id="8" onclick="jsq(this.id)" value="8" class="buttons">
  <input type="button" id="9" onclick="jsq(this.id)" value="9" class="buttons">
  <input type="button" id="Back" onclick="tuiGe()" value="Back" class="buttons">
  <input type="button" id="C" onclick="clearNum()" value="C" class="buttons" style="margin-right:0px">
  <!--第二排-->
  <input type="button" id="4" onclick="jsq(this.id)" value="4" class="buttons">
  <input type="button" id="5" onclick="jsq(this.id)" value="5" class="buttons">
  <input type="button" id="6" onclick="jsq(this.id)" value="6" class="buttons">
  <input type="button" id="*" onclick="jsq(this.id)" value="X" class="buttons">
  <input type="button" id="/" onclick="jsq(this.id)" value="/" class="buttons" style="margin-right:0px">
  <!--第三排-->
  <input type="button" id="1" onclick="jsq(this.id)" value="1" class="buttons">
  <input type="button" id="2" onclick="jsq(this.id)" value="2" class="buttons">
  <input type="button" id="3" onclick="jsq(this.id)" value="3" class="buttons">
  <input type="button" id="+" onclick="jsq(this.id)" value="+" class="buttons">
  <input type="button" id="-" onclick="jsq(this.id)" value="-" class="buttons" style="margin-right:0px">
  <!--第四排-->
  <input type="button" id="0" onclick="jsq(this.id)" value="0" class="buttons">
  <input type="button" id="00" onclick="jsq(this.id)" value="00" class="buttons">
  <input type="button" id="." onclick="jsq(this.id)" value="." class="buttons">
  <input type="button" id="%" onclick="jsq(this.id)" value="%" class="buttons">
  <input type="button" id="eva" onclick="eva()" value="=" class="buttons" style="margin-right:0px">
 </div>
 <div class="footer">
  <span class="aside">欢迎使用JavaScript计算器</span>
   <span class="link">
    <a href="#" title="声明" target="_blank">反馈</a>
   </span>
 </div>
</div>
</body>
</html>

js代码:

<script>
 var num = 0; // 定义第一个输入的数据
 function jsq(num) {
  //获取当前输入
  if(num=="%"){
   document.getElementById('screenName').value=Math.round(document.getElementById('screenName').value)/100;
  }else{
   document.getElementById('screenName').value += document.getElementById(num).value;
  }
 }
 function eva() {
  //计算输入结果
  document.getElementById("screenName").value = eval(document.getElementById("screenName").value);
 }
 function clearNum() {
  //清0
  document.getElementById("screenName").value = null;
  document.getElementById("screenName").focus();
 }
 function tuiGe() {
  //退格
  var arr = document.getElementById("screenName");
  arr.value = arr.value.substring(0, arr.value.length - 1);
 }
</script>

关于计算器的精彩文章请查看《计算器专题》 ,更多精彩等你来发现!

一个简单的计算器就是这样实现的,大家也可以利用javascript编写计算器,,希望对大家的学习有所帮助。

Javascript 相关文章推荐
IE8提示Invalid procedure call or argument 异常的解决方法
Sep 30 Javascript
Javascript检查图片大小不要让大图片撑破页面
Nov 04 Javascript
jQuery判断浏览器并动态调整select宽度的方法
Mar 02 Javascript
confirm确认对话框的实现方法总结
Jun 17 Javascript
多功能jQuery树插件zTree实现权限列表简单实例
Jul 12 Javascript
JavaScript编写一个简易购物车功能
Sep 17 Javascript
js实现控制textarea输入字符串的个数,鼠标按下抬起判断输入字符数
Oct 25 Javascript
jQuery实现获取选中复选框的值实例详解
Jun 28 jQuery
说说如何利用 Node.js 代理解决跨域问题
Apr 22 Javascript
解决Vue.js应用回退或刷新界面时提示用户保存修改问题
Nov 24 Javascript
JavaScript中变量提升机制示例详解
Dec 27 Javascript
JS检测浏览器开发者工具是否打开的方法详解
Oct 02 Javascript
HTML5 Shiv完美解决IE(IE6/IE7/IE8)不兼容HTML5标签的方法
Nov 25 #Javascript
jQuery插件formValidator自定义函数扩展功能实例详解
Nov 25 #Javascript
jQuery实现鼠标双击Table单元格变成文本框及输入内容后更新到数据库的方法
Nov 25 #Javascript
基于jQuery实现响应式圆形图片轮播特效
Nov 25 #Javascript
jquery+css实现动感的图片切换效果
Nov 25 #Javascript
基于jQuery实现拖拽图标到回收站并删除功能
Nov 25 #Javascript
基于jquery实现页面滚动时顶部导航显示隐藏
Apr 20 #Javascript
You might like
2021年最新CPU天梯图
2021/03/04 数码科技
PHP中改变图片的尺寸大小的代码
2011/07/17 PHP
php实现事件监听与触发的方法
2014/11/21 PHP
Yii入门教程之Yii安装及hello world
2014/11/25 PHP
thinkPHP统计排行与分页显示功能示例
2016/12/02 PHP
php实现给二维数组中所有一维数组添加值的方法
2017/02/04 PHP
JS 容错处理代码, 屏蔽错误信息
2021/03/09 Javascript
解决 FireFox 下[使用event很麻烦] 的问题.
2006/08/22 Javascript
javascript下阻止表单重复提交、防刷新、防后退
2007/08/17 Javascript
Javascript学习笔记7 原型链的原理
2010/01/11 Javascript
模拟jQuery中的ready方法及实现按需加载css,js实例代码
2013/09/27 Javascript
Google (Local) Search API的简单使用介绍
2013/11/28 Javascript
JavaScript中指定函数名称的相关方法
2015/06/04 Javascript
JavaScript知识点总结(十一)之js中的Object类详解
2016/05/31 Javascript
bootstrap中使用google prettify让代码高亮的方法
2016/10/21 Javascript
遍历json 对象的属性并且动态添加属性的实现
2016/12/02 Javascript
JavaScript版经典游戏之扫雷游戏完整示例【附demo源码下载】
2016/12/12 Javascript
Vue.js如何优雅的进行form validation
2017/04/07 Javascript
Node.js使用Koa搭建 基础项目
2018/01/08 Javascript
Node.js使用MySQL连接池的方法实例
2018/02/11 Javascript
JavaScript代码实现txt文件的上传预览功能
2018/03/27 Javascript
JS数组属性去重并校验重复数据
2020/01/10 Javascript
[00:36]我的中国心——Serenity vs Fnatic
2018/08/21 DOTA
零基础写python爬虫之神器正则表达式
2014/11/06 Python
编写Python脚本使得web页面上的代码高亮显示
2015/04/24 Python
用python做游戏的细节详解
2019/06/25 Python
在Django下测试与调试REST API的方法详解
2019/08/29 Python
python3.x 生成3维随机数组实例
2019/11/28 Python
使用python对excel表格处理的一些小功能
2021/01/25 Python
毕业生幼师求职自荐信
2013/10/01 职场文书
电子信息专业自荐书
2014/02/04 职场文书
股权转让意向书
2014/04/01 职场文书
乡镇党员干部群众路线对照检查材料思想汇报
2014/09/28 职场文书
撤诉申请怎么写
2015/05/19 职场文书
Python实现DBSCAN聚类算法并样例测试
2021/06/22 Python
Python pandas之求和运算和非空值个数统计
2021/08/07 Python