zoukankan      html  css  js  c++  java
  • 网页计算器

    (1)功能描述:

      在网页上实现一个计算器

    (2)实现代码:

    HTML:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
    <head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>Document</title>
    </head>
    <body>
        <div id="box">
            <p>By-白小虫</p>
            <input type="text" class="f-text" readonly="readonly" value="0" maxlength="9" />
            <ul>
                <li class="btn1"><a href="javascript:;">C</a></li>
                <li class="btn1"><a href="javascript:;">%</a></li>
                <li class="btn1"><a href="javascript:;">÷</a></li>
                <li class="btn1"><a href="javascript:;">×</a></li>
                <li><a href="javascript:;">7</a></li>
                <li><a href="javascript:;">8</a></li>
                <li><a href="javascript:;">9</a></li>
                <li class="btn1"><a href="javascript:;">-</a></li>
                <li><a href="javascript:;">4</a></li>
                <li><a href="javascript:;">5</a></li>
                <li><a href="javascript:;">6</a></li>
                <li class="btn1"><a href="javascript:;">+</a></li>
                <li><a href="javascript:;">1</a></li>
                <li><a href="javascript:;">2</a></li>
                <li><a href="javascript:;">3</a></li>
                <li class="btn2"><a href="javascript:;">=</a></li>
                <li class="btn3"><a href="javascript:;">0</a></li>
                <li><a href="javascript:;">.</a></li>
            </ul>
            <input type="text" id="formula" readonly="readonly" value="" />
        </div>
    </body>
    </html>

    CSS:

    <style>
        *{margin: 0px;padding: 0px;}
        li{list-style: none;}
        body{font: 700 24px/1.5 Arial;}
        a{text-decoration: none;color: #fff;}
        #box{width: 300px;background-color: #000;margin: 20px auto;position: relative;overflow: hidden;}
        #box p{color: #fff;font-size: 12px;text-align: right;padding: 0 5px;}
        #box .f-text{height: 84px;padding: 0 5px;width: 290px;background: url(inputBg.jpg) repeat-x;font: 700 50px/84px Arial;text-align: right;border: none;}
        #box ul{overflow: hidden;background: url(bg.jpg) repeat;position: relative;padding: 0 0 17px 8px}
        #box ul li{float: left;width: 63px;height: 41px;margin: 17px 10px 0 0;}
        #box ul li a{display: block;height: 41px;line-height: 41px;width: 63px;background: url(btn.png) no-repeat;text-align: center;}
        #box ul li a:hover{background-position: -63px 0;}
        #box ul li.btn1 a{background-position: 0 -41px;}
        #box ul li.btn1 a:hover{background-position: -63px -41px;}
        #box ul li.btn2{height: 99px;position: absolute;top: 174px;right: 0;}
        #box ul li.btn2 a{height: 99px;line-height: 99px;background-position: 0 -164px;}
        #box ul li.btn2 a:hover{background-position: -63px -164px;}
        #box ul li.btn3{width: 136px;}
        #box ul li.btn3 a{width: 136px;background-position: 0 -82px;}
        #box ul li.btn3 a:hover{background-position: 0 -123px;}
        #formula{position: absolute;top: 20px;left: 0;height: 20px;line-height: 20px;background: none;border: none;text-align: right;font: 700 12px/1.5 Arial;padding: 3px 15px 0 5px;width: 280px;}
    </style>

    JS:

    <script>
        window.onload=function(){
            var oBox = document.getElementById('box');
            var aA = oBox.getElementsByTagName('a');
            var aInput = document.getElementsByTagName('input')[0];
            var oFormula = document.getElementById('formula');
            var s = false;
            var i =0;
    
            for(var i=0;i<aA.length;i++){
                aA[i].onfocus=function(){
                    this.blur();
                };
                aA[i].onclick=function(){
                    switch(this.innerHTML){
                        case 'C':
                                aInput.value=0;
                                oFormula.value='';
                                break;
                        case '%':
                                count('%');
                                break;
                        case '÷':
                                count("/")
                                break;
                        case '×':
                                count("*")
                                break;
                        case '-':
                                count("-")
                                break;
                        case '+':
                                count("+")
                                break;
                        case '=':
                                s || (oFormula.value += aInput.value);
                                aInput.value = eval(oFormula.value.replace(/\%/*-+/,''));
                                aInput.value = aInput.value.substr(0,10).replace("NaN",0);
                                s = true;
                                break;
                        case ".":
                                if(aInput.value.search(/[.\%/*-+]/) != -1)
                                break;
                        default:
                                s && (aInput.value = 0, oFormula.value = "", s = false);
                                aInput.value.length < 10 && (aInput.value = (aInput.value + this.innerHTML).replace(/^[0\%/*-+](d)/,"$1"));
    
                    }
                };
            };
    
            function count(a){
                if(s){
                    oFormula.value = aInput.value+a;
                    aInput.value = a;
                    s = false;
                }else{
                    /[\%/*-+]$/.test(aInput.value) || (oFormula.value += aInput.value);
                    aInput.value = a;
                    /[\%/*-+]$/.test(oFormula.value) || (oFormula.value += aInput.value);
                    oFormula.value = oFormula.value.slice(-1) != a ? oFormula.value.replace(/.$/,a) : oFormula.value
                }
            };
    
    
        }
    </script>

    (3)效果图如下所示:

    素材图片如下:

    1、  2、    3、   

    高否?富否?帅否? 否? 滚去学习!
  • 相关阅读:
    Java如何编写自动售票机程序
    install windows service
    redis SERVER INSTALL WINDOWS SERVICE
    上传文件
    This problem will occur when running in 64 bit mode with the 32 bit Oracle client components installed.
    解决Uploadify上传控件加载导致的GET 404 Not Found问题
    OracleServiceORCL服务不见了怎么办
    Access to the temp directory is denied. Identity 'NT AUTHORITYNETWORK SERVICE' under which XmlSerializer is running does not have sufficient permiss
    MSSQL Server 2008 数据库安装失败
    数据库数据导出成XML文件
  • 原文地址:https://www.cnblogs.com/baixc/p/3428607.html
Copyright © 2011-2022 走看看