JavaScript基于DOM操作实现简单的数学运算功能示例


Posted in Javascript onJanuary 16, 2017

本文实例讲述了JavaScript基于DOM操作实现简单的数学运算功能。分享给大家供大家参考,具体如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8">
  <title>简单的DOM操作-实现简单的运算</title>
  <script type="text/javascript" language="javascript">
    window.onload = function () {
      //alert("window.onload!!!");
      var opNum1 = window.document.getElementById("opNum1");
      var opNum2 = window.document.getElementById("opNum2");
      //var op = window.document.getElementById("op");
      var btnElements = window.document.getElementsByName("operater"); //.getElementsByTagName("input[type=button]");
      var btnElementsLength = btnElements.length;
      for (var i = 0; i < btnElementsLength; i++) {
        //alert(i);
        btnElements[i].onclick = function () {
          //alert(opNum1.value + "_" + opNum2.value + "_" + this.value);
          operate(opNum1.value, opNum2.value, this.value);
        }
      }
    }
    function operate(opNum1, opNum2, op) {
      var result=null;
      switch (op) {
        case "+": result = parseFloat(opNum1) + parseFloat(opNum2);
          break;
        case "-": result = parseFloat(opNum1) - parseFloat(opNum2);
          break;
        case "*": result = parseFloat(opNum1) * parseFloat(opNum2);
          break;
        case "/": result = parseFloat(opNum1) / parseFloat(opNum2);
          break;
        case "%": result = parseFloat(opNum1) % parseFloat(opNum2);
          break;
        default:
          break;
      }
      var resultElement = window.document.getElementById("resultSpan");
      resultElement.innerHTML = result;
    }
  </script>
  <style type="text/css">
    body{ line-height:30px;
       font-size:20px;
    }
    input[type=button]{ width:50px;
    }
  </style>
</head>
<body>
  运算数1:<input type="text" id="opNum1" /><br />
  运算数2:<input type="text" id="opNum2" /><br />
  选择操作符:
  <input type="button" name="operater" value="+" />
  <input type="button" name="operater" value="-" />
  <input type="button" name="operater" value="*" />
  <input type="button" name="operater" value="/" />
  <input type="button" name="operater" value="%" />
  <br />
  运算结果为:<span id="resultSpan"></span><br />
</body>
</html>

PS:这里再为大家推荐几款计算工具供大家进一步参考借鉴:

在线一元函数(方程)求解计算工具:
http://tools.3water.com/jisuanqi/equ_jisuanqi

科学计算器在线使用_高级计算器在线计算:
http://tools.3water.com/jisuanqi/jsqkexue

在线计算器_标准计算器:
http://tools.3water.com/jisuanqi/jsq

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
农历与西历对照
Sep 06 Javascript
User Scripts: Video Download by User Scripts
May 14 Javascript
js限制textarea每行输入字符串长度的代码
Oct 31 Javascript
Javascript写入txt和读取txt文件示例
Feb 12 Javascript
JQuery对表格进行操作的常用技巧总结
Apr 23 Javascript
js实现从右向左缓缓浮出网页浮动层广告的方法
May 09 Javascript
深入学习JavaScript对象
Oct 13 Javascript
jQuery解析Json实例详解
Nov 24 Javascript
JS实现仿UC浏览器前进后退效果的实例代码
Jul 17 Javascript
微信小程序实现购物页面左右联动
Feb 15 Javascript
layui当点击文本框时弹出选择框,显示选择内容的例子
Sep 02 Javascript
React学习之受控组件与数据共享实例分析
Jan 06 Javascript
js实现弹窗暗层效果
Jan 16 #Javascript
js实现简单的计算器功能
Jan 16 #Javascript
Javascript中document.referrer隐藏来源的方法
Jan 16 #Javascript
基于jQuery实现的打字机效果
Jan 16 #Javascript
JS实现的验证身份证及获取地区功能示例
Jan 16 #Javascript
JavaScript严格模式详解
Jan 16 #Javascript
关于iframe跨域POST提交的方法示例
Jan 15 #Javascript
You might like
WIN98下Apache1.3.14+PHP4.0.4的安装
2006/10/09 PHP
php 高性能书写
2010/12/11 PHP
php使用Jpgraph绘制复杂X-Y坐标图的方法
2015/06/10 PHP
在laravel中实现事务回滚的方法
2019/10/10 PHP
HTML IMG标签 onload 内存溢出导致浏览器CPU占用过高
2021/03/09 Javascript
JavaScript Event学习第二章 Event浏览器兼容性
2010/02/07 Javascript
Json对象与Json字符串互转(4种转换方式)
2013/03/27 Javascript
angularjs基础教程
2014/12/25 Javascript
关于获取DIV内部内容报错的原因分析及解决办法
2016/01/29 Javascript
不定义JQuery插件 不要说会JQuery
2016/03/07 Javascript
JavaScript驾驭网页-DOM
2016/03/24 Javascript
jQuery EasyUI常用数据验证汇总
2016/09/18 Javascript
javascript监听页面刷新和页面关闭事件方法详解
2017/01/09 Javascript
js 判断数据类型的几种方法
2017/01/13 Javascript
jQuery操作DOM_动力节点Java学院整理
2017/07/04 jQuery
jQuery插件实现弹性运动完整示例
2018/07/07 jQuery
深入了解query和params的使用区别
2019/06/24 Javascript
如何在Vue中抽离接口配置文件
2019/10/31 Javascript
[00:33]DOTA2上海特级锦标赛 CDEC战队宣传片
2016/03/04 DOTA
[12:21]VICI vs TNC (BO3)
2018/06/07 DOTA
Python选择排序、冒泡排序、合并排序代码实例
2015/04/10 Python
Django接收自定义http header过程详解
2019/08/23 Python
Django框架安装方法图文详解
2019/11/04 Python
基于python+selenium的二次封装的实现
2020/01/06 Python
python openssl模块安装及用法
2020/12/06 Python
selenium框架中driver.close()和driver.quit()关闭浏览器
2020/12/08 Python
澳大利亚先进的皮肤和激光诊所购物网站:Soho Skincare
2018/10/15 全球购物
Lookfantastic澳大利亚官网:英国知名美妆购物网站
2021/01/07 全球购物
新员工培训个人的自我评价
2013/10/09 职场文书
学生爱国演讲稿
2014/01/14 职场文书
《可爱的动物》教学反思
2014/02/22 职场文书
承诺书的格式范文
2014/03/28 职场文书
学生未请假就回家检讨书
2014/09/22 职场文书
pytorch损失反向传播后梯度为none的问题
2021/05/12 Python
Go timer如何调度
2021/06/09 Golang
微信小程序实现轮播图指示器
2022/06/25 Javascript