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图片画廊插件 推荐
May 12 Javascript
现代 JavaScript 开发编程风格Idiomatic.js指南中文版
May 28 Javascript
Ext GridPanel加载完数据后进行操作示例代码
Jun 17 Javascript
深入理解JavaScript系列(39):设计模式之适配器模式详解
Mar 04 Javascript
JavaScript中的this使用详解
Jul 27 Javascript
动态生成的DOM不会触发onclick事件的原因及解决方法
Aug 06 Javascript
vue2.0开发实践总结之疑难篇
Dec 07 Javascript
jQuery实现分页功能(含ajax请求、后台数据、附完整demo)
Apr 03 jQuery
EasyUI在Panel上动态添加LinkButton按钮
Aug 11 Javascript
vue2.0安装style/css loader的方法
Mar 14 Javascript
详解React的回调渲染模式
Sep 10 Javascript
JavaScript实现浏览器网页自动滚动并点击的示例代码
Dec 05 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 PDO的一些认识小结
2015/01/23 PHP
支付宝接口开发集成支付环境小结
2015/03/17 PHP
php如何比较两个浮点数是否相等详解
2019/02/12 PHP
IE7提供XMLHttpRequest对象为兼容
2007/03/08 Javascript
用javascript自动显示最后更新时间
2007/03/15 Javascript
jQuery Ajax之load()方法
2009/10/12 Javascript
JavaScript CSS 修改学习第四章 透明度设置
2010/02/19 Javascript
javascript实现分栏显示小技巧附图
2014/10/13 Javascript
node.js中的buffer.Buffer.isBuffer方法使用说明
2014/12/14 Javascript
JavaScript使用Range调色及透明度实例
2016/09/25 Javascript
JavaScript DOM节点操作实例小结(新建,删除HTML元素)
2017/01/19 Javascript
Node.js dgram模块实现UDP通信示例代码
2017/09/26 Javascript
VueCli3构建TS项目的方法步骤
2018/11/07 Javascript
Vue源码解析之数组变异的实现
2018/12/04 Javascript
基于JS实现快速读取TXT文件
2020/08/25 Javascript
vue+node 实现视频在线播放的实例代码
2020/10/19 Javascript
vue打开新窗口并实现传参的图文实例
2021/03/04 Vue.js
[23:21]Ti4 冒泡赛第二轮DK vs C9 2
2014/07/14 DOTA
Python实现在Linux系统下更改当前进程运行用户
2015/02/04 Python
Python判断两个对象相等的原理
2017/12/12 Python
Python实现按中文排序的方法示例
2018/04/25 Python
Python使用progressbar模块实现的显示进度条功能
2018/05/31 Python
Python3 jupyter notebook 服务器搭建过程
2018/11/30 Python
用Python实现将一张图片分成9宫格的示例
2019/07/05 Python
python中seaborn包常用图形使用详解
2019/11/25 Python
Python安装tar.gz格式文件方法详解
2020/01/19 Python
Python3使用xlrd、xlwt处理Excel方法数据
2020/02/28 Python
python利用appium实现手机APP自动化的示例
2021/01/26 Python
有关HTML5 Video对象的ontimeupdate事件(Chrome上无效)的问题
2013/07/19 HTML / CSS
HTML5 embed标签定义和用法详解
2014/05/09 HTML / CSS
日本运动品牌美津浓官方购物网站:MIZUNO SHOP
2016/08/21 全球购物
会计专业应届生自荐信
2014/02/07 职场文书
客户接待方案
2014/02/26 职场文书
2014全国两会心得体会
2014/03/17 职场文书
公共场所禁烟标语
2014/06/25 职场文书
Golang解析JSON对象
2022/04/30 Golang