计算器案例

<!DOCTYPE html>
<html>
  <head>
    <title>计算器</title>
    <meta charset="utf-8" />
    <style type="text/css">
      .panel {
        border: 4px solid #ddd;
        width: 192px;
        margin: 100px auto;
        border-radius: 6px;
      }
      .panel p, .panel input {
        font-family: "微软雅黑";
        font-size: 20px;
        margin: 4px;
        float: left;
        border-radius: 4px;
      }
      .panel p {
        width: 122px;
        height: 26px;
        border: 1px solid #ddd;
        padding: 6px;
        overflow: hidden;
      }
      .panel input {
        width: 40px;
        height: 40px;
        border:1px solid #ddd;
      }
    </style>
    <script type="text/javascript">
        function cal(e){
            //1.获取时间源(button,p,div)
            var obj=e.srcElement||e.target;
            //2.只处理按钮button事件,节点名大写
            if(obj.nodeName!="INPUT"){
                return;
            }
            //3.判断按钮的类型(value)做不同的处理
            var p=document.getElementById("screen");
            var val=obj.value;
            if(val=="C"){
                //清屏
                p.innerHTML="";
            }else if(val=="="){
                //计算
                try{
                    var r=eval(p.innerHTML);
                    p.innerHTML=r;
                }catch(e){
                    //错误时提示
                    p.innerHTML="Error";
                }
            }else{
                //累加
                p.innerHTML+=val;
            }
            
        }
    </script>
  </head>
  <body>
    <div class="panel" onclick="cal(event);">
      <div>
        <p id="screen"></p>
        <input type="button" value="C">
        <div style="clear:both"></div>
      </div>
      <div>
        <input type="button" value="7">
        <input type="button" value="8">
        <input type="button" value="9">
        <input type="button" value="/">
        
        <input type="button" value="4">
        <input type="button" value="5">
        <input type="button" value="6">
        <input type="button" value="*">
        
        <input type="button" value="1">
        <input type="button" value="2">
        <input type="button" value="3">
        <input type="button" value="-">
        
        <input type="button" value="0">
        <input type="button" value=".">
        <input type="button" value="=">
        <input type="button" value="+">
        
        <div style="clear:both"></div>
      </div>
    </div>    
  </body>
</html>

图片示例

屏幕快照 2016-12-10 下午6.19.29.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,305评论 4 61
  • iOS 苹果官方Demo合集 字数10517阅读21059评论18喜欢144 其实, 开发了这么久, 不得不说, ...
    bingo居然被占了阅读 10,381评论 2 31
  • 点击查看原文 Web SDK 开发手册 SDK 概述 网易云信 SDK 为 Web 应用提供一个完善的 IM 系统...
    layjoy阅读 14,042评论 0 15
  • 简介网络浏览器很可能是使用最广的软件。在这篇入门文章中,我将会介绍它们的幕后工作原理。我们会了解到,从您在地址栏输...
    wengjq阅读 2,128评论 2 15
  • 随着你渐渐长大,你和父母互动时承担的角色必然也会随之改变。有时你表现得张一个有担当的成人(关于这件事你完全可以相信...
    树树树树树树阅读 217评论 0 1