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 相关文章推荐
JQuery 技巧和窍门整理(8个)
Apr 22 Javascript
JS 面向对象之神奇的prototype
Feb 26 Javascript
EditPlus注册码生成器(js代码实现)
Mar 25 Javascript
jQuery右侧选项卡焦点图片轮播特效代码分享
Sep 05 Javascript
jQuery 常用代码集锦(必看篇)
May 16 Javascript
ES6入门教程之Class和Module详解
May 17 Javascript
ReactNative中使用Redux架构总结
Dec 15 Javascript
JS脚本加载后执行相应回调函数的操作方法
Feb 28 Javascript
解决vue.js this.$router.push无效的问题
Sep 03 Javascript
微信小程序网络层封装的实现(promise, 登录锁)
May 08 Javascript
浅谈对于“不用setInterval,用setTimeout”的理解
Aug 28 Javascript
VUE:vuex 用户登录信息的数据写入与获取方式
Nov 11 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
php 获取百度的热词数据的代码
2012/02/18 PHP
JQuery下的Live方法和$.browser方法使用代码
2010/06/02 Javascript
谈谈关于JavaScript 中的 MVC 模式
2013/04/11 Javascript
javascript上传图片前预览图片兼容大多数浏览器
2013/10/25 Javascript
JS+CSS实现带有碰撞缓冲效果的竖向导航条代码
2015/09/15 Javascript
clipboard.js无需Flash无需依赖任何JS库实现文本复制与剪切
2015/10/10 Javascript
JavaScript实现页面跳转的方式汇总
2016/05/16 Javascript
jQuery实现对象转为url参数的方法
2017/01/11 Javascript
bootstrap实现动态进度条效果
2017/03/08 Javascript
利用Node.js对文件进行重命名
2017/03/12 Javascript
two.js之实现动画效果示例
2017/11/06 Javascript
实现jquery放大镜的两种方法
2018/02/22 jQuery
vue中Element-ui 输入银行账号每四位加一个空格的实现代码
2018/09/14 Javascript
监控Nodejs的性能实例代码
2019/07/02 NodeJs
javascript设计模式 ? 解释器模式原理与用法实例分析
2020/04/17 Javascript
[02:09]抵达西雅图!中国军团加油!
2014/07/07 DOTA
[00:10]DOTA2全国高校联赛 以DOTA2会友
2018/05/30 DOTA
[00:17]天涯墨客一技能展示
2018/08/25 DOTA
[01:03:41]完美世界DOTA2联赛PWL S3 DLG vs Phoenix 第一场 12.17
2020/12/19 DOTA
Python中的ctime()方法使用教程
2015/05/22 Python
python使用win32com库播放mp3文件的方法
2015/05/30 Python
Python上传package到Pypi(代码简单)
2016/02/06 Python
python使用tensorflow保存、加载和使用模型的方法
2018/01/31 Python
Python 读写文件的操作代码
2018/09/20 Python
python 实现一次性在文件中写入多行的方法
2019/01/28 Python
解决pyPdf和pyPdf2在合并pdf时出现异常的问题
2020/04/03 Python
Selenium 安装和简单使用的实现
2020/12/04 Python
新奇的小玩意:IWOOT
2016/07/21 全球购物
人事专员工作职责
2014/02/22 职场文书
感情真挚的毕业生求职信
2014/07/19 职场文书
2014年销售工作总结与计划
2014/12/01 职场文书
总经理岗位职责
2015/02/04 职场文书
2015年保险公司工作总结
2015/04/24 职场文书
单位实习介绍信
2015/05/05 职场文书
蓝天保卫战收官在即 :15行业将开展环保分级评价
2019/07/19 职场文书
python神经网络学习 使用Keras进行简单分类
2022/05/04 Python