前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >JavaScript编写简单的网页计算器

JavaScript编写简单的网页计算器

作者头像
P轴
发布2022-11-18 11:45:33
发布2022-11-18 11:45:33
89700
代码可运行
举报
文章被收录于专栏:P轴P轴
运行总次数:0
代码可运行

计算器app如下:

学习了js和jquery,编写了一个计算器app。主要思路是将按键事件对应字符串存储,利用eval()方法进行执行,需要注意的时执行前要将x替换为*,÷替换为/。另外调整了一些CSS样式,模仿iPhone计算器的界面,源代码看嵌入的网页。

代码语言:javascript
代码运行次数:0
运行
复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>计算器</title>
    <style>
        *{margin: 0px;padding: 0px;}
        #main{background: #000;border-radius: 30px; height: 500px;width: 220px;margin: auto;}
        #result{width: 165px;height: 40px; margin: 60px 0px 5px 25px; border: 0px;
            background: #000;color: white;text-align: right;line-height: 40px;font-size: 40px;}

        table{background: #000;border-spacing:6px ;margin: auto; }
        table input{width:40px ;height: 40px; text-align: center;background: rgb(49, 49, 49);border:solid 0px blac;border-radius: 20px;
            color: white;font-size: 20px; line-height: 40px;}
        table input:active{background: #fff;color: #000;}    
        
        .btnf{background: rgb(246, 153, 6)}
        .btnf:active{background: rgb(246, 246, 246);color: rgb(246, 153, 6);}
        #cal{background: rgb(183, 45, 26);width: 80px;}
        #cal:active{background:rgb(246, 246, 246);color: rgb(183, 45, 26);}
    </style>
    <script type="text/javascript" src="https://code.jquery.com/jquery-3.1.1.min.js" ></script>
    <script>
        $(document).ready(function () {
                var clickBtn = "0";//结果显示内容 x÷
                var calstr = "";//实际计算的内容 */
                $(":button").click(function () {
                    var n = $(this).val();
                    if (n == 'C') {
                        clickBtn = "0";
                    } else if (n == '=') {
                        try {
                            var inputText = $("#result").val();
                            calstr = inputText.replace(/x/g, "*").replace(/÷/g, "/");
                            clickBtn = window.eval(calstr);
                        } catch (err) {
                            clickBtn = "输入错误!";
                        }
                    } else if ($("#result").val() == 0 && n != "+" && n != "-" && n != "x" && n != "÷") {
                        clickBtn = n;
                    } else {
                        clickBtn += n;
                    }
                    $("#result").val(clickBtn);
                });
            });
    </script>
</head>
<body>
    <div id="main">
    <input type="text" id="result" value="0" size="17" maxlength="17" >
    <table border="0px" >
        <tr>
            <td><input type="button" class="btn" value="7"></td>
            <td><input type="button" class="btn" value="8"></td>
            <td><input type="button" class="btn" value="9"></td>
            <td><input type="button"  id="add" class="btnf" value="+"></td>
        </tr>
        <tr>
            <td><input type="button" class="btn" value="4"></td>
            <td><input type="button" class="btn" value="5"></td>
            <td><input type="button" class="btn" value="6"></td>
            <td><input type="button"  id="sub" class="btnf" value="-"></td>
        </tr>
        <tr>
            <td><input type="button" class="btn" value="1"></td>
            <td><input type="button" class="btn" value="2"></td>
            <td><input type="button" class="btn" value="3"></td>
            <td><input type="button"  id="times" class="btnf" value="x"></td>
        </tr>
        <tr>
            <td><input type="button" class="btn" value="0"></td>
            <td><input type="button" class="btn" id="dot" value="."></td>
            <td><input type="button" class="btnf" value="C"></td>
            <td><input type="button"  class="btnf" id="chu" value="÷"></td>
        </tr>
        <tr>
            <td><input type="button" class="btn" value="("></td>
            <td><input type="button" class="btn"  value=")"></td>
            <td colspan="2"><input type="button" class="btnf" id="cal" value="=" ></td>
        </tr>
    </table>
</div>
    
</body>
</html>
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档