JS实现简单计算器
2017-08-04 23:14
323 查看
效果如上图:
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>