Mini Calculator(JavaScript)

原创 2007年09月23日 16:19:00
<html>
    
<head>
        
<title>Calculator</title>
        
<script language="javascript">...
            
            
//数字验证
            function ValidateIsNum(textbox)
            
...{
                
//如果为空,则默认为0
                if(textbox.value == "")
                
...{
                    textbox.value 
= 0;
                    
return true;
                }

                
//输入为非数字则清空并提示
                if(isNaN(textbox.value))
                
...{
                    textbox.value 
= "";
                    alert(
"请输入数字");
                    textbox.focus();
                    
return false;
                }

                
return true;
            }

            
            
//改变提示
            function ChangeTitle(radio)
            
...{
                
var title1 = document.getElementById("tdTitle1");
                
var title2 = document.getElementById("tdTitle2");
                
if(radio.id =="plus")
                
...{                    
                    title1.innerText 
= "请输入加数1:";
                    title2.innerText 
= "请输入加数2:"
                }

                
if(radio.id == "minus")
                
...{                    
                    title1.innerText 
= "请输入被减数:";
                    title2.innerText 
= "请输入减数:"
                }

                
if(radio.id == "multiply")
                
...{                    
                    title1.innerText 
= "请输入被乘数:";
                    title2.innerText 
= "请输入乘数:"
                }

                
if(radio.id == "divide")
                
...{
                    title1.innerText 
= "请输入被除数:";
                    title2.innerText 
= "请输入除数:"
                }

                
//有输入框为空,则Focus,不为空则计算
                var text1 = document.getElementById("input1");
                
var text2 = document.getElementById("input2");
                
if(text1.value == "")
                    text1.focus();
                
else if(text2.valuse == "")
                    text2.focus();
                    
else
                        Calc(text1,text2);
            }

            
            
function Calc(textbox1,textbox2)
            
...{
                
//验证输入是否合法
                if(!ValidateIsNum(textbox1) || !ValidateIsNum(textbox2))
                
...{
                    
return;
                }

                
var operand1 = parseFloat(textbox1.value);
                
var operand2 = parseFloat(textbox2.value);
                
var result = 0;
                
if(document.getElementById("plus").checked == true)
                
...{
                    result 
= operand1 + operand2;
                }

                
if(document.getElementById("minus").checked == true)
                
...{
                    result 
= operand1 - operand2;
                }

                
if(document.getElementById("multiply").checked == true)
                
...{
                    result 
= operand1 * operand2;
                }

                
if(document.getElementById("divide").checked == true)
                
...{
                    
if(operand2 != 0)
                    
...{
                        result 
= operand1 / operand2;
                    }

                    
else
                    
...{
                        alert(
"被除数不可为零");
                        textbox2.value 
= "";
                        textbox2.focus();
                    }

                }

                
//输出
                document.getElementById("inputResult").value = result;
            }

            
            
//当focus时如果内容为0,则清空
            function ClearWhenFocus(textbox)
            
...{
                
if(textbox.value == 0)
                
...{
                    textbox.value 
= "";
                }

            }

        
</script>
    
</head>
    
<body>
        
<table border="2">
            
<tr>
                
<td>请选择运算符:</td>
                
<td>
                    
<input type="radio" checked="true" id="plus" name="operator" onclick="ChangeTitle(this)"></input>+
                    
<input type="radio" id="minus" name="operator"  onclick="ChangeTitle(this)"></input>-
                    
<input type="radio" id="multiply" name="operator"  onclick="ChangeTitle(this)"></input>*
                    
<input type="radio" id="divide" name="operator"  onclick="ChangeTitle(this)"></input>/
                
</td>
            
</tr>
            
<tr>
                
<td id="tdTitle1">请输入加数1</td>
                
<td><input type="text" id="input1" style="display:block" onkeyup="Calc(this,input2)" onfocus="ClearWhenFocus(this)"></input></td>
            
</tr>
            
<tr>
                
<td id="tdTitle2">请输入加数2</td>
                
<td><input type="text" id="input2" style="display:block" onkeyup="Calc(input1,this)" onfocus="ClearWhenFocus(this)"></input></td>
            
</tr>
            
<tr>
                
<td>计算结果为:</td>
                
<td><input type="text" id="inputResult" style="display:block"></input></td>
            
</tr>
        
</table>
    
</body>
</html>
 

Calculator源码分析

说明:该文章基于android 5.1的源码进行分析。 calculator的效果图: packages/apps/Calculator/AndroidManifest.xml 我们先来看...
  • lz99770337
  • lz99770337
  • 2015年07月20日 10:44
  • 753

Android Calculator2源码分析与修改

将Android 4.4.4的计算器Calculator移植出来,可以独立的在Android Studio中使用。完整的代码已经推到我的GitHub,链接在文末。 下面看一下效果图: 这是在三星手...
  • zhoumushui
  • zhoumushui
  • 2015年04月14日 16:13
  • 2021

Android-DPI-Calculator

转自:https://github.com/JerzyPuchalski/Android-DPI-Calculator Android-DPI-Calculator Android...
  • hr8610
  • hr8610
  • 2015年07月21日 14:01
  • 1533

LeetCode 227. Basic Calculator II 解题报告【python】

思路分析 该题是一个简单的表达式求值问题,我们可以采用“算符优先法”来解决该问题。该算法在严蔚敏的《数据结构C语言版》第三章有详细描述。 该题中的每一个表达式都是由操作数和操作符组成,根据四则运算法则...
  • kuaisuzhuceh
  • kuaisuzhuceh
  • 2016年01月30日 14:11
  • 610

arcgis 栅格计算器(Spatial Analyst/Raster Calculator)

原文地址:点击打开链接 栅格计算器中用得到$$相关函数 $$NROWS: the number of rows in the analysis window (行数) $$NCOLS...
  • jiushidt
  • jiushidt
  • 2015年08月03日 13:44
  • 3302

【LeetCode】Basic Calculator && Basic Calculator II

1、Basic Calculator  Total Accepted: 3726 Total Submissions: 24053 My Submissions Question Solution  ...
  • u013027996
  • u013027996
  • 2015年06月24日 11:01
  • 3518

Beaver's Calculator coderforces 70A1 蓝桥杯

Beaver's Calculator coderforces 70A1 这道题贪心 思路简单 但是方法对于我来说比较巧了 题解看源码 #include #include using n...
  • liyanfeng1996
  • liyanfeng1996
  • 2017年02月02日 21:02
  • 565

NYOJ 486 Old Calculator

Old Calculator 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 描述 szhhck have an old calculator boug...
  • qq523176585
  • qq523176585
  • 2013年12月19日 17:29
  • 317

Leetcode 224: Basic Calculator

Leetcode 224: Basic Calculator java c++ python
  • xudli
  • xudli
  • 2015年06月19日 00:59
  • 7587

Python Calculator

概述命令行的Python可以当个计算器用 还可以输入算式,比Win10自带的好用 下载技巧小数要算小数必须加上.0,不然默认Int开方不能直接用sqrt 必须先import math 再mat...
  • YYecust
  • YYecust
  • 2016年04月18日 19:16
  • 179
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Mini Calculator(JavaScript)
举报原因:
原因补充:

(最多只允许输入30个字)