jQuery实现计算器功能


Posted in jQuery onOctober 19, 2020

本文实例为大家分享了jQuery实现计算器功能的具体代码,供大家参考,具体内容如下

动画效果:

jQuery实现计算器功能

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>计算器</title>
  <script src="../jquery.min.js"></script>
  <style>
    *{
      margin: 0;
      padding: 0;
    }
    #calculator{
      margin: 50px auto;
      padding: 5px;
      width: 230px;
      height: 230px;
      background: rgb(190,210,224);
    }
    #screen{
      width: 230px;
      height: 60px;
      background: rgb(153,153,153);
      border-radius: 5px;
      text-align: right;
      overflow: hidden;
    }
    #txt1{
      height: 20px;
      padding-top: 10px;
      font-size: 10px;
    }
    #txt2{
      height: 30px;
      font-size: 20px;
    }
    #num{
      float:left;
      width: 130px;
    }
    #num input{
      width: 40px;
      height: 40px;
      margin-top: 3px;
    }
    #operator{
      float:right;
      width: 70px;
      height: 170px;
    }
    #operator input{
      width: 70px;
      height: 30px;
      margin-top: 4px ;
    }
    #converter{
      float:right;
      width: 70px;
      height: 170px;
    }
 
  </style>
</head>
<body>
<div id="calculator">
  <div id="screen">
    <p id="txt1"></p>
    <p id="txt2"></p>
  </div>
  <div id="workspace">
    <div id="num">
      <input type="button" value="7">
      <input type="button" value="8">
      <input type="button" value="9">
      <input type="button" value="4">
      <input type="button" value="5">
      <input type="button" value="6">
      <input type="button" value="1">
      <input type="button" value="2">
      <input type="button" value="3">
      <input type="button" value="C">
      <input type="button" value="0">
      <input type="button" value=".">
 
    </div>
    <div id="operator">
      <input type="button" value="+">
      <input type="button" value="-">
      <input type="button" value="*">
      <input type="button" value="/">
      <input type="button" value="=">
    </div>
 
 
  </div>
</div>
 
<script>
  $(function(){
     var i=0;//i为清空标志,i=1时需要清空#txt2的数据
    //获取输入的数字
    $("#num input").click(function () {
      //先判断#txt2中是否保存着上次计算的结果,如果是则将其清空
      if (i===1){
        $("#txt2").text("");
        }
      //保证数字以正确的格式显示
      //使用switch语句实现
      switch ($(this).val()){
         case "C":
           $("#txt2").text("");
           break;
         case ".":
           if ($("#txt2").text().indexOf(".") != -1) {
           break;
           }else{$("#txt2").append($(this).val());}
           break;
         default:
           if ($("#txt2").text() === "0") {
             $("#txt2").text($(this).val());
            }else{
              $("#txt2").append($(this).val());
            }
          }
          //使用if语句实现
         /* if ($(this).val()=="C"){
             $("#txt2").text(" ");
           } else {
            if ($("#txt2").text().indexOf(".") != -1) {
              if ($(this).val() == ".") {
               } else {
                 $("#txt2").append($(this).val());
               }
            } else if ($("#txt2").text() === "0") {
              if ($(this).val() === ".") {
              $("#txt2").append($(this).val());
              } else {
                $("#txt2").text($(this).val());
              }
             }else{
              $("#txt2").append($(this).val());
             }
             }*/
         i=0;//将清空标志设为0
     });
    //获取运算符
     $("#operator input:not(:last)").click(function () {
       $("#txt1").text($("#txt2").text()+$(this).val());
       $("#txt2").text("");
     });
     //按下“=”键进行计算
     $("#operator input").last().click(function () {
       //使用eval()函数
      //$("#txt2").text(eval($("#txt1").text()+$("#txt2").text()));
       //使用常规方法
       var str=$("#txt1").text();
       var n1=parseFloat(str);
       var n2=parseFloat($("#txt2").text());
       var cal=str[str.length-1];
       switch (cal){
         case "+":
           $("#txt2").text( n1+n2);
           break;
         case "-":
           $("#txt2").text( n1-n2);
           break;
         case "*":
           $("#txt2").text( n1*n2);
           break;
         case "/":
           $("#txt2").text( n1/n2);
           break;
         default: break;
       }
       $("#txt1").text( "");
       i=1;//将清空标志设为1
     });
  });
</script>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
jQuery编写textarea输入字数限制代码
Mar 23 jQuery
jquery实现一个全局计时器(商城可用)
Jun 30 jQuery
JQuery EasyUI的一些常用组件
Jul 12 jQuery
基于jQuery实现的单行公告活动轮播效果
Aug 23 jQuery
jquery在vue脚手架中的使用方式示例
Aug 29 jQuery
jQuery中.attr()和.data()的区别分析
Sep 03 jQuery
jQuery实现table表格checkbox全选的方法分析
Jul 04 jQuery
Jquery获取radio选中值实例总结
Jan 17 jQuery
jquery实现Ajax请求的几种常见方式总结
May 28 jQuery
使用jquery-easyui的布局layout写后台管理页面的代码详解
Jun 19 jQuery
jQuery实现简易聊天框
Feb 08 jQuery
jquery实现进度条状态展示
Mar 26 jQuery
jQuery实现推拉门效果
Oct 19 #jQuery
jQuery实现图片切换效果
Oct 19 #jQuery
jQuery实现回到顶部效果
Oct 19 #jQuery
jQuery实现放大镜案例
Oct 19 #jQuery
jQuery插件实现图片轮播效果
Oct 19 #jQuery
jquery插件实现轮播图效果
Oct 19 #jQuery
jQuery zTree如何改变指定节点文本样式
Oct 16 #jQuery
You might like
多数据表共用一个页的新闻发布
2006/10/09 PHP
PHP函数之日期时间函数date()使用详解
2013/09/09 PHP
laravel 4安装及入门图文教程
2014/10/29 PHP
PHP简单实现循环链表功能示例
2017/11/10 PHP
js下获取div中的数据的原理分析
2010/04/07 Javascript
IE8 chrome中table隔行换色解决办法
2010/07/09 Javascript
深入理解JavaScript系列(6):S.O.L.I.D五大原则之单一职责SRP
2012/01/15 Javascript
关闭时刷新父窗口两种方法
2014/05/07 Javascript
JQuery表单验证插件EasyValidator用法分析
2014/11/15 Javascript
JavaScript使用shift方法移除素组第一个元素实例分析
2015/04/06 Javascript
AngularJS基础 ng-csp 指令详解
2016/08/01 Javascript
jQuery点击导航栏选中更换样式的实现代码
2017/01/23 Javascript
ES6学习笔记之正则表达式和字符串正则方法分析
2017/04/25 Javascript
js禁止Backspace键使浏览器后退的实现方法
2017/09/01 Javascript
vue实现登陆登出的实现示例
2017/09/15 Javascript
Vue 项目部署到服务器的问题解决方法
2017/12/05 Javascript
vue如何解决循环引用组件报错的问题
2018/09/22 Javascript
在vue中使用express-mock搭建mock服务的方法
2018/11/07 Javascript
javascript实现摄像头拍照预览
2019/09/30 Javascript
vue组件实现移动端九宫格转盘抽奖
2020/10/16 Javascript
聊聊vue 中的v-on参数问题
2021/01/29 Vue.js
[34:56]Ti4冒泡赛LGD vs Liquid 1
2014/07/14 DOTA
在树莓派2或树莓派B+上安装Python和OpenCV的教程
2015/03/30 Python
python中尾递归用法实例详解
2015/04/28 Python
python获取指定目录下所有文件名列表的方法
2015/05/20 Python
Python检测一个对象是否为字符串类的方法
2015/05/21 Python
R vs. Python 数据分析中谁与争锋?
2017/10/18 Python
对python3 Serial 串口助手的接收读取数据方法详解
2019/06/12 Python
python在openstreetmap地图上绘制路线图的实现
2019/07/11 Python
解决python 3 urllib 没有 urlencode 属性的问题
2019/08/22 Python
pymysql的简单封装代码实例
2020/01/08 Python
卡西欧B级产品官方网站:Casio Outlet
2018/05/22 全球购物
医学类个人求职信范文
2014/02/05 职场文书
简单租房协议书(范本)
2014/10/13 职场文书
2015年少先队活动总结
2015/03/25 职场文书
离婚答辩状范文
2015/05/22 职场文书