JavaScript实现简单的计算器


Posted in Javascript onJanuary 16, 2020

本文实例为大家分享了JavaScript实现简单的计算器的具体代码,供大家参考,具体内容如下

整个计算器实现由html文件、js文件和css样式表三部分组成
整体效果:body里放俩div,一个大的包一个小的,小的放键盘,键盘div里放键盘。

JavaScript实现简单的计算器

html:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>计算器</title>
 <link rel="stylesheet" href="css/jsq_css.css">
</head>
 
<body>
 <div class="bor">
 <input type="text" class="s_text" οnfοcus="this.blur();" value="0" id="result">
 <div class="main">
  <li οnclick="command(7);">7</li>
  <li οnclick="command(8);">8</li>
  <li οnclick="command(9);">9</li>
  <li id="j_div" οnclick="tools('/','g')">÷</li>
  <li οnclick="command(4);">4</li>
  <li οnclick="command(5);">5</li>
  <li οnclick="command(6);">6</li>
  <li id="j_mul" οnclick="tools('*','g')">×</li>
  <li οnclick="command(1);">1</li>
  <li οnclick="command(2);">2</li>
  <li οnclick="command(3);">3</li>
  <li id="j_sub" οnclick="tools('-','g');">-</li>
  <li οnclick="command(0)";>0</li>
  <li id="j_c"οnclick="clearzero('j')">c</li>
  <li id="j_dy"οnclick="equal('j');">=</li>
  <li id="j_add" οnclick="tools('+','g')";>+</li>
 
  </ul>
 </div>
 </div>
</body>
</html>

css:

*{margin: 0;padding: 0}
li{list-style: none}
 
.bor{margin: 0 auto;width: 400px;height: 520px;border: 2px solid #000;
margin-top: 50px;overflow: hidden;text-align: center;}
.s_text{margin: 0 auto;width: 330px;height: 80px;margin-top: 15px;
border: 2px solid #000000;font-size: 30px;padding-left: 20px;}
.main{margin: 0 auto;width: 350px;height: 400px;margin-top: 15px;}
.main ul{display: flex;height: 100%;justify-content: space-between;flex-wrap: wrap;}
.main ul li{width: 80px;height: 80px;border: 1px solid #000000;
text-align: center; line-height:80px;font-size: 36px;cursor: pointer ;}
.main ul li:hover{background: #eeeeee;}

js:(将这段代码写在body最下面) 

<script type="text/javascript">
 var resultDom = document.getElementById("result");
 var operate = true; //操作符加锁
 var afequ = true;
 //点击计算器执行函数(点数字的时候)
 function command(num){
  //点击等号之后要进行一次清空
  if(!afequ) {
  clearzero();
  }
  //获取输入框中value的值
  var str = resultDom.value;//在这里加一个判断, 如果第一位是0, 就用""填充
  str = (str == "0" ? "":str);//条件操作符 str在判断无输入或者0的时候 都算作是0
  str += num; //拼接数字, 然后赋值给文本框
  resultDom.value = str;//.value获取文本框中的值
  operate = true; //锁住操作符
 }
 //四则运算
 function tools(p,m){
  if(operate){
  var num = resultDom.value;
  num = (num == "0" ? "":num);
  resultDom.value = num + p;
  operate = false;
  }
 }
 //得出最后的结果
 function equal(m){
  var result = resultDom.value;
  var r = eval(result); //eval() 函数计算 JavaScript 字符串,并把它作为脚本代码来执行
  resultDom.value =r;
 }
 //c归零的
 function clearzero(){
  resultDom.value=0;
 }
 
</script>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript 基础知识 被自己遗忘的
Oct 15 Javascript
javascript实现的基于金山词霸网络翻译的代码
Jan 15 Javascript
jquery实现pager控件示例
Apr 09 Javascript
jQuery编程中的一些核心方法简介
Aug 14 Javascript
JS跨域解决方案之使用CORS实现跨域
Apr 14 Javascript
js删除Array数组中指定元素的两种方法
Aug 03 Javascript
JS 组件系列之BootstrapTable的treegrid功能
Jun 16 Javascript
JavaScript ES6中const、let与var的对比详解
Jun 18 Javascript
webpack学习笔记之代码分割和按需加载的实例详解
Jul 20 Javascript
基于JavaScript实现新增内容滚动播放效果附完整代码
Aug 24 Javascript
Vue 开发音乐播放器之歌手页右侧快速入口功能
Aug 08 Javascript
微信小程序顶部导航栏滑动tab效果
Jan 28 Javascript
js面向对象之实现淘宝放大镜
Jan 15 #Javascript
js实现简单的打印表格
Jan 15 #Javascript
js实现图片实时时钟
Jan 15 #Javascript
js实现中文实时时钟
Jan 15 #Javascript
JS实现音量控制拖动
Jan 15 #Javascript
基于vue.js实现购物车
Jan 15 #Javascript
原生js+css调节音量滑块
Jan 15 #Javascript
You might like
在“咖啡之国”感受咖啡文化
2021/03/03 咖啡文化
15种PHP Encoder的比较
2007/03/06 PHP
PHP中的按位与和按位或操作示例
2014/01/27 PHP
从wamp到xampp的升级之路
2015/04/08 PHP
用php代码限制国内IP访问我们网站
2015/09/26 PHP
php数组冒泡排序算法实例
2016/05/06 PHP
PHP批量删除jQuery操作
2017/07/23 PHP
JScript的条件编译
2007/05/29 Javascript
js函数使用技巧之 setTimeout(function(){},0)
2009/02/09 Javascript
滚动条变色 隐藏滚动条与双击网页自动滚屏显示代码
2009/12/28 Javascript
批量下载对路网图片并生成html的实现方法
2016/06/07 Javascript
AngularJS入门教程之双向绑定详解
2016/08/18 Javascript
JavaScript实现垂直滚动条效果
2017/01/18 Javascript
基于jQuery实现弹幕APP
2017/02/10 Javascript
jquery事件与绑定事件
2017/03/16 Javascript
nodejs操作mysql实现增删改查的实例
2017/05/28 NodeJs
浅谈Node.js ORM框架Sequlize之表间关系
2017/07/24 Javascript
vue.js框架实现表单排序和分页效果
2017/08/09 Javascript
js实现以最简单的方式将数组元素添加到对象中的方法
2017/12/20 Javascript
JS简单生成由字母数字组合随机字符串示例
2018/05/25 Javascript
微信小程序使用车牌号输入法的示例代码
2019/08/20 Javascript
微信jssdk踩坑之签名错误invalid signature
2020/05/19 Javascript
微信小程序实现电子签名并导出图片
2020/05/27 Javascript
vue项目页面嵌入代码块vue-prism-editor的实现
2020/10/30 Javascript
提升Python程序运行效率的6个方法
2015/03/31 Python
Python实现队列的方法
2015/05/26 Python
Python简单生成随机数的方法示例
2018/03/31 Python
python执行scp命令拷贝文件及文件夹到远程主机的目录方法
2019/07/08 Python
python按修改时间顺序排列文件的实例代码
2019/07/25 Python
python计算无向图节点度的实例代码
2019/11/22 Python
Django ModelForm组件原理及用法详解
2020/10/12 Python
斯洛伐克最大的婴儿食品和用品网上商店:Feedo.sk
2020/12/21 全球购物
用Python匹配HTML tag的时候,<.*>和<.*?>有什么区别
2012/11/04 面试题
大学生涯自我鉴定
2014/01/16 职场文书
老师给学生的表扬信
2014/01/17 职场文书
报表员工作失误检讨书范文
2014/09/19 职场文书