JS实现简单计算器

来源:互联网 发布:ipad淘宝卖家 编辑:程序博客网 时间:2024/05/22 00:14

效果如上图:

CSS代码:


HTML 代码:


JS代码:

<script>        var sNum1='';//储存        var sOpr='';        var bNeedClear=false;    //是否需要清除输入框中已有的内容
       //计算函数传参 输入得数字 和 运算符号        function calc(iNum1, iNum2, sOpr)        {            var iResult=0;            switch(sOpr)            {                case '×':                    iResult=iNum1*iNum2;                    break;                case '+':                    iResult=iNum1+iNum2;                    break;                case '-':                    iResult=iNum1-iNum2;                    break;                case '÷':                    iResult=iNum1/iNum2;                    break;                default:                    iResult=iNum2;            }            return iResult;        }       //获得输入的值 和 符号        function doInput()        {            var oInput=document.getElementById('input1');            var sHtml=this.innerHTML.replace(' ','');            switch(sHtml)            {                case '=':                    oInput.value=calc(parseInt(sNum1), parseInt(oInput.value), sOpr);                    sNum1='';                    sOpr='';                    bNeedClear=true;                    break;                case '+':                case '-':                case '×':                case '÷':                    bNeedClear=true;                    if(sNum1.length!=0)                    {                        oInput.value=calc(parseInt(sNum1), parseInt(oInput.value), sOpr);                    }                    sOpr=sHtml;                    sNum1=oInput.value;                    break;                case 'C':                    oInput.value='0';                    sNum1='';                    sOpr='';                    break;                default:    //数字                    if(bNeedClear)                    {                        oInput.value=parseInt(sHtml, 10);                        bNeedClear=false;                    }                    else                    {                        oInput.value=parseInt(oInput.value+sHtml, 10);                    }                    break;            }        }        window.onload=function ()        {            var aLi=document.getElementsByTagName('li');            var i=0;            for(i=0;i<aLi.length;i++)            {                aLi[i].onmousedown=doInput;                aLi[i].onmouseover=function ()                {                    this.className='active';                };                aLi[i].onmouseout=function ()                {                    this.className='';                };            }        };    </script>



原创粉丝点击