<!DOCTYPE html>
<html lang="zh-CN">
<head>
<!-- <meata charset='utf-8'> -->
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><!--解决火狐浏览器中文乱码问题-->
<title></title>
<style type="text/css">
button {
height: 50px;
width: 50px;
}
ul {
list-style: none;
width: 150px;
}
li {
float: left;
}
div {
width: 150px;
height: 100px;
line-height: 100px;
text-align: center;
background-color: yellow;
}
</style>
</head>
<body>

<ul>
<li><button id='1' onclick="getText(this)"> 1</button></li>
<li><button id='1' onclick="getText(this)"> 2</button></li>
<li><button id='1' onclick="getText(this)"> 3</button></li>
<li><button id='1' onclick="getText(this)"> 4</button></li>
<li><button id='1' onclick="getText(this)"> 5</button></li>
<li><button id='1' onclick="getText(this)"> 6</button></li>
<li><button id='1' onclick="getText(this)"> 7</button></li>
<li><button id='1' onclick="getText(this)"> 8</button></li>
<li><button id='1' onclick="getText(this)"> 9</button></li>
<li><button id='1' onclick="getText(this)"> 0</button></li>
<li><button id='1' onclick="getText(this)"> +</button></li>
<li><button id='1' onclick="getText(this)"> -</button></li>
<li><button id='1' onclick="getText(this)"> *</button></li>
<li><button id='1' onclick="getText(this)"> /</button></li>
<li><button id='1' onclick="getText(this)"> =</button></li>
</ul>
<ul>
<li><div id='showText' style="font-size: 12px;">不支持负数</div></li>
</ul>
<script type="text/javascript" charset="utf-8">
var sum_1='';
var sum_2='';
var oper='';//加减乘除
var sign=false;
var showMsg='';
var num=false;
var div_ele=document.getElementById('showText');

function getText(obj){
var tagText=obj.innerHTML;

tagText=tagText.replace(' ','');//剔除空格

if (tagText != "="){
this.showMsg=this.showMsg.replace('undefined','');
this.showMsg+=tagText;
div_ele.innerHTML=this.showMsg;
}

switch(tagText)
{
case '-':isOper(tagText);break;
case '+':isOper(tagText);break;
case '/':isOper(tagText);break;
case '*':isOper(tagText);break;
case '=':operation(this.oper);break;
default:inputAdd(tagText,this.sign);

}

}
// if(isNaN(this.num_2) || isNaN(this.num_1)){
// div_ele.innerHTML='计算 你妹看清楚再点!';
// initConfig();
// return '';
// }

//计算
function operation(oper)
{
// if (this.num_1=='' && this.num){
// this.num_1=this.num;
// alert('复合条件');
// }

switch(oper)
{
case '-':subtraction();break;
case '+':addition();break;
case '/':division();break;
case '*':multiplication();break;
}
}

//检测用户是不是已经单击过 加减乘除了
function isOper(str)
{

// alert(this.num_1.length);

if (this.oper=='')
{
this.oper=str;
this.sign=true;
}
else
{
div_ele.innerHTML='你妹看清楚再点!';
initConfig();
}
}

//字符串的拼接
function inputAdd(num,sign){
if (!sign)
{
this.num_1=this.num_1+num;
}
else
{
this.num_2=this.num_2+num
}
}

function typeTran(){
this.num_1=this.num_1.replace('undefined','');
this.num_2=this.num_2.replace('undefined','');
}
//加法
function addition(){
typeTran();
// this.num=(Number(this.num_2)+Number(this.num_1));
this.div_ele.innerHTML=(Number(this.num_2)+Number(this.num_1));
initConfig();
}

//减法
function subtraction(){
typeTran();
this.div_ele.innerHTML=(Number(this.num_1)-Number(this.num_2));
initConfig()
}

//除法
function division(){
typeTran();
this.div_ele.innerHTML=(Number(this.num_1)/Number(this.num_2));
initConfig()
}

//乘法
function multiplication(){
typeTran();
this.div_ele.innerHTML=(Number(this.num_1)*Number(this.num_2));
initConfig()
}
function initConfig(){
this.oper=''
this.num_1='';
this.num_2='';
this.showMsg='';
this.sign=false;
// div_ele.innerHTML='美女你好!';
}

</script>
</body>
</html>

js 实现的简易计算器的更多相关文章

  1. js小效果-简易计算器

    <!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8" ...

  2. 使用html+css+js实现简易计算器

    使用html+css+js实现简易计算器, 效果图如下: html代码如下: <!DOCTYPE html> <html lang="en"> <he ...

  3. 用js制作简易计算器及猜随机数字游戏

    <!doctype html><html><head> <meta charset="utf-8"> <title>JS ...

  4. 项目:JS实现简易计算器案例

    组件化网页开发下的: 步骤一:让页面动起来的JavaScript深入讲解  的 项目:JS实现简易计算器案例

  5. 原生JS实现简易计算器

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  6. JS简易计算器的实现,以及代码的优化

    用JS实现简易计算器 首先创建结构和样式 <!DOCTYPE html> <html lang="en"> <head> <meta ch ...

  7. js之简易计算器

    <!DOCTYPE html PUBLIC "-//W3C//Dli XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. JS编写简易计算器

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/html"> <head lang=" ...

  9. JS实现简易计算器的7种方法

    先放图(好吧比较挫) 方法一:最容易版 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta ...

随机推荐

  1. 知识点4: 配置echarts折线图和饼图

    折线图 效果图 html <template> <div id="v11-charts3"></div> </template> j ...

  2. 在服务器上同时启动多个tomcat

    我所用Tomcat服务器都为zip版,非安装版.以两个为例:安装第二个Tomcat完成后,到安装目录下的conf子目录中打开server.xml文件,查找以下三处:(1) 修改http访问端口(默认为 ...

  3. 10.mysql-触发器.md

    目录 定义 语法 定义 当操作了某张表时,希望同时触发一些动作/行为,可以使用触发器完成 语法 -- 需求: 当向员工表插入一条记录时,希望mysql自动同时往日志表插入数据 -- 创建触发器(添加) ...

  4. (转)C#如何加载程序运行目录外的程序集

    https://www.cnblogs.com/guanglin/p/3200989.html 我们的应用程序部署的时候,目录结构一般不会只有运行程序的目录这一个,我们可能在运行目录下建子目录,也可能 ...

  5. C# 反射获取所有视图

    原地址:忘了 controller 的 action 加上属性 [System.ComponentModel.Description("菜单列表")]  且  返回值为 Syste ...

  6. JAVA&PYTHON

  7. yii2.0 添加组件baidu ueditor

    下载uditor git clone https://github.com/BigKuCha/yii2-ueditor-widget.git 将下载的项目放到 common/wdigets目录上 修改 ...

  8. spring 手册

    https://www.tutorialspoint.com/spring/spring_architecture.htm

  9. Python 测试

    (1)import doctest doctest.testmod(verbose=True) (2) pip install tests

  10. 最小齐套回写MO工单组件数量错误 SQL

    SELECT * FROM OUT_MO_RES WHERE PEGGED_ID='001201271060'; --5000175080/160_1-MFG0011 SELECT * FROM V_ ...