JS实现基本的网页计算器功能示例


Posted in Javascript onJanuary 16, 2020

本文实例讲述了JS实现基本的网页计算器功能。分享给大家供大家参考,具体如下:

<html>
    <head>
        <title>网页计算机</title>
        <meta charset="UTF-8"/>
        <style type="text/css">
            #jsjdiv{
                border: solid 1px black;
                border-radius: 5px;
                width: 200px;
                /*height: 400px;*/
                text-align: center; /*设置div内部居中*/
                margin: auto;    /*设置计算机居中*/
                background-color: darkgrey;
            }
            input[type=text]{
                width: 190px;          /*设置大小*/
                height: 35px;
                margin-top: 10px;   /*设置边框*/
                margin-bottom: 5px;
            }
            input[type=button]{
                width: 44px;
                height: 44px;
                /*margin-left: 5px;
                margin-right: 5px;*/
                margin-top: 5px;
                margin-bottom: 10px;
                font-size: 25px;  /*设置text的字体大小及深度*/
                font-weight: 600;
            }
        </style>
        <script type="text/javascript">
            function cal(btn){
                var num=btn.value;
                switch (num){   // 利用eval可以把string的内容转化成代码,在代码中输入可以直接进行计算
                    case "=":
                        document.getElementById("inp").value=eval(document.getElementById("inp").value);
                        break;
                    case "c":
                        document.getElementById("inp").value="";
                        break;
                    default:        //进行输入数据的拼接
                        document.getElementById("inp").value=document.getElementById("inp").value + num;
                        break;
                }
            }
        </script>
    </head>
    <body>
        <div id="jsjdiv">
            <input type="text" name="" id="inp" value="" /><br />
            <input type="button" name="" id="btn" value="1" onclick="cal(this)"/>
            <input type="button" name="" id="" value="2" onclick="cal(this)"/>
            <input type="button" name="" id="" value="3" onclick="cal(this)"/>
            <input type="button" name="" id="" value="4" onclick="cal(this)"/><br />
            <input type="button" name="" id="" value="5" onclick="cal(this)"/>
            <input type="button" name="" id="" value="6" onclick="cal(this)"/>
            <input type="button" name="" id="" value="7" onclick="cal(this)"/>
            <input type="button" name="" id="" value="8" onclick="cal(this)"/><br />
            <input type="button" name="" id="" value="9" onclick="cal(this)"/>
            <input type="button" name="" id="" value="+" onclick="cal(this)"/>
            <input type="button" name="" id="" value="-" onclick="cal(this)"/>
            <input type="button" name="" id="" value="*" onclick="cal(this)"/><br />
            <input type="button" name="" id="" value="0" onclick="cal(this)"/>
            <input type="button" name="" id="" value="/" onclick="cal(this)"/>
            <input type="button" name="" id="" value="c" onclick="cal(this)"/>
            <input type="button" name="" id="" value="=" onclick="cal(this)" />
        </div>
    </body>
</html>

运行效果:

JS实现基本的网页计算器功能示例

网页计算机:

利用css进行div的布局设置基本的计算机的基本的框架,

在其内部设置text进行显示,利用button添加按钮。

一个主要的点:我们要在按按钮的时候,把数据输出到text文本上。我们利用了function添加一个函数,在进行按按钮时,利用onclick,连接到函数,在函数中实现文本的显示。但是我们在函数中只能对某个id进行调用,这样就表示有多少按钮就要有多少函数,而且内容相同。所以我们引用了this(当前对象)进行调用。

另一方面,我们要实现计算,我们利用eval()把其中的内容转化为代码,就相当于代码执行。所以可以直接进行运算输出。

当我们输入“=”和“c"就要进行计算操作,相应的我们利用了switch进行区分。

感兴趣的朋友可以使用在线HTML/CSS/JavaScript前端代码调试运行工具:http://tools.3water.com/code/WebCodeRun测试上述代码运行效果。

Javascript 相关文章推荐
Javascript变量函数浅析
Sep 02 Javascript
js实现瀑布流的一种简单方法实例分享
Nov 04 Javascript
jquery attr方法获取input的checked属性问题
May 26 Javascript
JsRender for object语法简介
Oct 31 Javascript
Javascript中typeof 用法小结
May 12 Javascript
微信小程序 基础知识css样式media标签
Feb 15 Javascript
axios基本入门用法教程
Mar 25 Javascript
JavaScript实现简单动态进度条效果
Apr 06 Javascript
使用vuex的state状态对象的5种方式
Apr 19 Javascript
javascript数据结构之多叉树经典操作示例【创建、添加、遍历、移除等】
Aug 01 Javascript
详解关闭令人抓狂的ESlint 语法检测配置方法
Oct 28 Javascript
vue 使用原生组件上传图片的实例
Sep 08 Javascript
JS数组进阶示例【数组的几种函数用法】
Jan 16 #Javascript
js实现简单的秒表
Jan 16 #Javascript
JS 数组基本用法入门示例解析
Jan 16 #Javascript
js实现上下左右键盘控制div移动
Jan 16 #Javascript
vue-cli3 取消eslint校验代码的解决办法
Jan 16 #Javascript
jQuery实现数字华容道小游戏(实例代码)
Jan 16 #jQuery
js实现点击生成随机div
Jan 16 #Javascript
You might like
《星际争霸II》全新指挥官斯台特曼现已上线
2020/03/08 星际争霸
php读取30天之内的根据算法排序的代码
2008/04/06 PHP
9个PHP开发常用功能函数小结
2011/07/15 PHP
php XMLWriter类的简单示例代码(RSS输出)
2011/09/30 PHP
Smarty使用自定义资源的方法
2015/08/08 PHP
dess中一个简单的多路委托的实现
2010/07/20 Javascript
关于js类的定义
2011/06/28 Javascript
使用Java实现简单的server/client回显功能的方法介绍
2013/05/03 Javascript
js实现可拖动DIV的方法
2013/12/17 Javascript
上传图片js判断图片尺寸和格式兼容IE
2014/09/01 Javascript
JavaScript用JQuery呼叫Server端方法示例代码
2014/09/03 Javascript
开源的javascript项目Kissy介绍
2014/11/28 Javascript
JS获取浮动(float)元素的style.left值为空的快速解决办法
2017/02/19 Javascript
JS判断一个数是否是水仙花数
2017/06/11 Javascript
利用npm 安装删除模块的方法
2018/05/15 Javascript
详解小程序如何改变onLoad的执行时机
2019/11/01 Javascript
40行代码把Vue3的响应式集成进React做状态管理
2020/05/20 Javascript
vue实现简单计算商品价格
2020/09/14 Javascript
在JavaScript中查找字符串中最长单词的三种方法(推荐)
2021/01/18 Javascript
[04:29]2014DOTA2国际邀请赛 主赛事第三日TOPPLAY
2014/07/21 DOTA
王纯业的Python学习笔记 下载
2007/02/10 Python
python获取网页状态码示例
2014/03/30 Python
Python单例模式实例分析
2015/01/14 Python
python使用multiprocessing模块实现带回调函数的异步调用方法
2015/04/18 Python
Python中使用Queue和Condition进行线程同步的方法
2016/01/19 Python
python3连接MySQL数据库实例详解
2018/05/24 Python
python实现字符串和数字拼接
2020/03/02 Python
vue.js刷新当前页面的实例讲解
2020/12/29 Python
python使用scapy模块实现ARP扫描的过程
2021/01/21 Python
倩碧英国官网:Clinique英国
2018/08/10 全球购物
日本热销NO.1胶原蛋白冻:Aishitoto爱希特多
2019/06/20 全球购物
聚网科技C++面试笔试题
2015/09/01 面试题
2016毕业实习单位评语大全
2015/12/01 职场文书
世界各国短波电台对东亚播送时间频率表(SW)
2021/06/28 无线电
Anaconda配置各版本Pytorch的实现
2021/08/07 Python
Vue中Object.assign清空数据报错的解决方案
2022/03/03 Vue.js