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 相关文章推荐
jQuery动态添加 input type=file的实现代码
Jun 14 Javascript
JQuery入门——事件切换之toggle()方法应用介绍
Feb 05 Javascript
window.location.reload()方法刷新页面弹出要再次显示该网页对话框
Apr 24 Javascript
JavaScript实现打字效果的方法
Jul 10 Javascript
微信小程序 实现tabs选项卡效果实例代码
Oct 31 Javascript
jQuery Easyui datagrid行内实现【添加】、【编辑】、【上移】、【下移】
Dec 19 Javascript
webpack4 入门最简单的例子介绍
Sep 05 Javascript
js限制输入框只能输入数字(onkeyup触发)
Sep 28 Javascript
vue中filters 传入两个参数 / 使用两个filters的实现方法
Jul 15 Javascript
js实现多张图片每隔一秒切换一张图片
Jul 29 Javascript
JavaScript变量Dom对象的所有属性
Apr 30 Javascript
ES6 十大特性简介
Dec 09 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
PHP文件缓存类示例分享
2015/01/30 PHP
[JS源码]超长文章自动分页(客户端版)
2007/01/09 Javascript
JavaScript 封装Ajax传递的数据代码
2009/06/05 Javascript
这些年、我收集的JQuery代码小结
2012/08/01 Javascript
jQuery.holdReady()使用方法
2014/05/20 Javascript
JavaScript实现随机替换图片的方法
2015/04/16 Javascript
javasript实现密码的隐藏与显示
2015/05/08 Javascript
javascript带回调函数的异步脚本载入方法实例分析
2015/07/02 Javascript
Jquery幻灯片特效代码分享--鼠标点击按钮时切换(1)
2015/08/15 Javascript
jQuery EasyUI Tab 选项卡问题小结
2016/08/16 Javascript
jQuery内容过滤选择器用法示例
2016/09/09 Javascript
微信小程序  modal详解及实例代码
2016/11/09 Javascript
vue2 如何实现div contenteditable=“true”(类似于v-model)的效果
2017/02/08 Javascript
Angularjs处理页面闪烁的解决方法
2017/03/09 Javascript
react学习笔记之state以及setState的使用
2017/12/07 Javascript
js实现以最简单的方式将数组元素添加到对象中的方法
2017/12/20 Javascript
javascript实现获取一个日期段内每天不同的价格(计算入住总价格)
2018/02/05 Javascript
妙用缓存调用链实现JS方法的重载
2018/04/30 Javascript
webpack3里使用uglifyjs压缩js时打包报错的解决
2018/12/13 Javascript
玩转Koa之核心原理分析
2018/12/29 Javascript
JavaScript中如何调用Java方法
2020/09/16 Javascript
html+vue.js 实现漂亮分页功能可兼容IE
2020/11/07 Javascript
nodejs中的异步编程知识点详解
2021/01/17 NodeJs
[01:29:17]RNG vs Liquid 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.23
2019/09/05 DOTA
基于Python实现的百度贴吧网络爬虫实例
2015/04/17 Python
python使用分治法实现求解最大值的方法
2015/05/12 Python
PyQt5 pyqt多线程操作入门
2018/05/05 Python
python实现对csv文件的列的内容读取
2018/07/04 Python
如何理解python对象
2020/06/21 Python
解决Pymongo insert时会自动添加_id的问题
2020/12/05 Python
lookfantastic荷兰:在线购买奢华护肤、护发和化妆品
2018/11/27 全球购物
墨西哥购物网站:Elektra
2020/01/21 全球购物
毕业生自荐书模版
2014/01/04 职场文书
帝企鹅日记观后感
2015/06/10 职场文书
《宝可梦》动画制作25周年到来 官方发布特别纪念视频
2022/04/01 日漫
SpringBoot项目部署到阿里云服务器的实现步骤
2022/06/28 Java/Android