javascript白色简洁计算器


Posted in Javascript onMay 04, 2015

本文中计算器代码很简单,你可以很容易把该网页特效应用到你的项目中。

javascript白色简洁计算器

HTML

首先我们在网页上放置一个输入框及多个计算器按钮。

<div id="calcuator"> 
  <input type="text" id="input-box" value="0" size="21" maxlength="21" readonly="readonly" /> 
  <div id="btn-list"> 
    <div onclick="operator('clear')" class=" btn-30 btn-radius color-red clear-marginleft"> 
      C</div> 
    <div onclick="operator('opposite')" class=" btn-30 btn-radius color-blue"> 
      +/-</div> 
    <div onclick="operator('percent')" class=" btn-30 btn-radius color-blue"> 
      %</div> 
    <div onclick="operator('backspace')" class=" btn-70 btn-radius color-red font-14"> 
      ←</div> 
    <div onclick="typetoinput('7')" class=" btn-30 btn-radius clear-marginleft"> 
      7</div> 
    <div onclick="typetoinput('8')" class=" btn-30 btn-radius"> 
      8</div> 
    <div onclick="typetoinput('9')" class=" btn-30 btn-radius"> 
      9</div> 
    <div onclick="operator('plus')" class=" btn-30 btn-radius color-blue font-14"> 
      +</div> 
    <div onclick="operator('minus')" class=" btn-30 btn-radius color-blue font-14"> 
      -</div> 
    <div onclick="typetoinput('4')" class=" btn-30 btn-radius clear-marginleft"> 
      4</div> 
    <div onclick="typetoinput('5')" class=" btn-30 btn-radius"> 
      5</div> 
    <div onclick="typetoinput('6')" class=" btn-30 btn-radius"> 
      6</div> 
    <div onclick="operator('multiply')" class=" btn-30 btn-radius color-blue font-14"> 
      ×</div> 
    <div onclick="operator('divide')" class=" btn-30 btn-radius color-blue font-12"> 
      ÷</div> 
    <div onclick="typetoinput('1')" class=" btn-30 btn-radius clear-marginleft"> 
      1</div> 
    <div onclick="typetoinput('2')" class=" btn-30 btn-radius"> 
      2</div> 
    <div onclick="typetoinput('3')" class=" btn-30 btn-radius"> 
      3</div> 
    <div onclick="operator('pow')" class=" btn-30 btn-radius color-blue font-14"> 
      ײ</div> 
    <div onclick="operator('sqrt')" class=" btn-30 btn-radius color-blue font-12"> 
      √</div> 
    <div onclick="typetoinput('0')" class=" btn-70 btn-radius clear-marginleft"> 
      0</div> 
    <div onclick="typetoinput('.')" class=" btn-30 btn-radius"> 
      .</div> 
    <div onclick="operator('result')" class=" btn-70 btn-radius color-red font-14"> 
      =</div> 
  </div> 
</div>

js

根据操作类型作相应操作:

function operator(type) { 
  switch (type) { 
  case "clear": 
    input.value = "0"; 
    _string.length = 0; 
    /*document.getElementById("ccc").innerHTML=""; 
        for(i=0;i<_string.length;i++) 
        { 
          document.getElementById("ccc").innerHTML+=_string[i]+" "     
        }*/ 
    break; 
  case "backspace": 
    if (checknum(input.value) != 0) { 
      input.value = input.value.replace(/.$/, ''); 
      if (input.value == "") { 
        input.value = "0"; 
      } 
    } 
    break; 
  case "opposite": 
    if (checknum(input.value) != 0) { 
      input.value = -input.value; 
    } 
    break; 
  case "percent": 
    if (checknum(input.value) != 0) { 
      input.value = input.value / 100; 
    } 
    break; 
  case "pow": 
    if (checknum(input.value) != 0) { 
      input.value = Math.pow(input.value, 2); 
    } 
    break; 
  case "sqrt": 
    if (checknum(input.value) != 0) { 
      input.value = Math.sqrt(input.value); 
    } 
    break; 
  case "plus": 
    if (checknum(input.value) != 0) { 
      _string.push(input.value); 
      _type = "plus"input.value = "+"; 
      input.name = "type"; 
    } 
    break; 
  case "minus": 
    if (checknum(input.value) != 0) { 
      _string.push(input.value); 
      _type = "minus"input.value = "-"; 
      input.name = "type"; 
    } 
    break; 
  case "multiply": 
    if (checknum(input.value) != 0) { 
      _string.push(input.value); 
      _type = "multiply"input.value = "×"; 
      input.name = "type"; 
    } 
    break; 
  case "divide": 
    if (checknum(input.value) != 0) { 
      _string.push(input.value); 
      _type = "divide"input.value = "÷"; 
      input.name = "type"; 
    } 
    break; 
  case "result": 
    if (checknum(input.value) != 0) { 
      _string.push(input.value); 
      if (parseInt(_string.length) % 2 != 0) { 
        _string.push(_string[_string.length - 2]) 
      } 
      if (_type == "plus") { 
        input.value = parseFloat(result(_string)[0]) + parseFloat(result(_string)[1]); 
        input.name = "type" 
      } else if (_type == "minus") { 
        input.value = parseFloat(result(_string)[0]) - parseFloat(result(_string)[1]); 
        input.name = "type" 
      } else if (_type == "multiply") { 
        input.value = parseFloat(result(_string)[0]) * parseFloat(result(_string)[1]); 
        input.name = "type" 
      } else if (_type == "divide") { 
        input.value = parseFloat(result(_string)[0]) / parseFloat(result(_string)[1]); 
        input.name = "type" 
      } 
      break; 
    } 
 
  } 
}

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
js 判断一个元素是否在页面中存在
Dec 27 Javascript
jquery鼠标停止移动事件
Dec 21 Javascript
Javascript中replace()小结
Sep 30 Javascript
深入解析JavaScript中的数字对象与字符串对象
Oct 21 Javascript
JavaScript基础篇(6)之函数表达式闭包
Dec 11 Javascript
JS 拼凑字符串的简单实例
Sep 02 Javascript
微信小程序 登陆流程详细介绍
Jan 17 Javascript
jQuery动态添加.active 实现导航效果代码思路详解
Aug 29 jQuery
浅谈Angular6的服务和依赖注入
Jun 27 Javascript
angular 组件通信的几种实现方式
Jul 13 Javascript
Vue路由模块化配置的完整步骤
Aug 14 Javascript
详解Node.JS模块 process
Aug 31 Javascript
jQuery简单实现日历的方法
May 04 #Javascript
jquery插件jSignature实现手动签名
May 04 #Javascript
js简单实现竖向tab选项卡的方法
May 04 #Javascript
PHP+mysql+Highcharts生成饼状图
May 04 #Javascript
jQuery实现仿Google首页拖动效果的方法
May 04 #Javascript
js检测判断日期大于多少天的方法
May 04 #Javascript
jQuery实现表格展开与折叠的方法
May 04 #Javascript
You might like
微信公众平台DEMO(PHP)
2016/05/04 PHP
Laravel框架实现的批量删除功能示例
2019/01/16 PHP
Javascript倒计时代码
2010/08/12 Javascript
15款优秀的jQuery导航菜单插件分享
2011/07/19 Javascript
jQuery实现div浮动层跟随页面滚动效果
2014/02/11 Javascript
javascript实现10个球随机运动、碰撞实例详解
2015/07/08 Javascript
JQ中$(window).load和$(document).ready区别与执行顺序
2017/03/01 Javascript
Angular2使用Guard和Resolve进行验证和权限控制
2017/04/24 Javascript
Angular4 中内置指令的基本用法
2017/07/31 Javascript
jQuery实现表单动态加减、ajax表单提交功能
2018/06/08 jQuery
Vue时间轴 vue-light-timeline的用法说明
2020/10/29 Javascript
解决vue props传Array/Object类型值,子组件报错的情况
2020/11/07 Javascript
[11:57]《一刀刀一天》第十七期:TI中国军团加油!
2014/05/26 DOTA
[00:36]DOTA2上海特级锦标赛 LGD战队宣传片
2016/03/04 DOTA
[00:12]DAC SOLO赛卫冕冠军 VG.Paparazi灬展现SOLO技巧
2018/04/06 DOTA
[01:20:37]FNATIC vs NIP 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
在Django框架中编写Context处理器的方法
2015/07/20 Python
啥是佩奇?使用Python自动绘画小猪佩奇的代码实例
2019/02/20 Python
python binascii 进制转换实例
2019/06/12 Python
pytorch numpy list类型之间的相互转换实例
2019/08/18 Python
python Web flask 视图内容和模板实现代码
2019/08/23 Python
Python3 中作为一等对象的函数解析
2019/12/11 Python
PyCharm MySQL可视化Database配置过程图解
2020/06/09 Python
使用分层画布来优化HTML5渲染的教程
2015/05/08 HTML / CSS
美国知名的隐形眼镜电商:Contacts America
2019/11/19 全球购物
大学生就业推荐信范文
2013/11/29 职场文书
模具数控专业自荐信
2014/01/27 职场文书
金融管理毕业生求职信
2014/03/03 职场文书
工作决心书范文
2014/03/11 职场文书
消防宣传口号
2014/06/16 职场文书
被告答辩状范文
2015/05/22 职场文书
2016应届毕业生就业指导课心得体会
2016/01/15 职场文书
成本低的5个创业项目:投资小、赚钱快
2019/08/20 职场文书
PostgreSQL自动更新时间戳实例代码
2021/11/27 PostgreSQL
SQL优化老出错,那是你没弄明白MySQL解释计划用法
2021/11/27 MySQL
MySQL中rank() over、dense_rank() over、row_number() over用法介绍
2022/03/23 MySQL