代码:写的不好,还有很大改进空间
<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8"> <title>计算器3.0</title> <style type="text/css"> body{ background-color: #bfa; } input{ width: 200px; height: 100px; font-size: 30px; color: red; margin: 10px; } .alls{ position: relative; width: 1110px; margin: auto; margin-top: 80px; } #accepDate{ width: 1100px; height: 50px; margin-bottom: 40px; border-radius: 0; } #lll{ position: absolute; height: 220px; bottom: 0; right: 0; } #lll1{ position: absolute; height: 220px; bottom: 240px; right: 0; } </style> </head> <body> <div class="alls"> <div> <input id="accepDate" type="text" name="accepDate" readonly /><br> <input type="submit" name="Submit" onclick="AcceptData('7')" value="7" /> <input type="submit" name="Submit" onclick="AcceptData('8')" value="8" /> <input type="submit" name="Submit" onclick="AcceptData('9')" value="9" /> <input type="submit" name="Submit" onclick="AcceptData('*')" value="*" /><br> <input type="submit" name="Submit" onclick="AcceptData('4')" value="4" /> <input type="submit" name="Submit" onclick="AcceptData('5')" value="5" /> <input type="submit" name="Submit" onclick="AcceptData('6')" value="6" /> <input type="submit" name="Submit" onclick="AcceptData('-')" value="-" /><br> <input type="submit" name="Submit" onclick="AcceptData('1')" value="1" /> <input type="submit" name="Submit" onclick="AcceptData('2')" value="2" /> <input type="submit" name="Submit" onclick="AcceptData('3')" value="3" /> <input type="submit" name="Submit" onclick="AcceptData('+')" value="+" /><br> <input type="submit" name="Submit" onclick="AcceptData('.')" value="." /> <input type="submit" name="Submit" onclick="AcceptData('0')" value="0" /> <input type="submit" name="Submit" onclick="AcceptData('=')" value="=" /> <input type="submit" name="Submit" onclick="AcceptData('/')" value="/" /> </div> <input id="lll1" type="submit" name="reset" onclick="AcceptData('delete')" value="←" /> <input id="lll" type="submit" name="reset" onclick="AcceptData('empty')" value="清空" /> </div> <script language="javascript"> var sum=[]; var hahaha=""; function AcceptData(num){ if(Number(num) >= 0 && Number(num) <=9){ hahaha += num; document.getElementById("accepDate").value+=num; } else if(num=="."){ hahaha += num; document.getElementById("accepDate").value+=num; } else if(num=="empty"){ document.getElementById("accepDate").value=""; sum = []; hahaha = ""; } else if(num == "delete"){ var centerss = document.getElementById("accepDate").value; document.getElementById("accepDate").value = centerss.substring(0 , centerss.length-1); if(hahaha.length == 1){ hahaha = ""; } else if(hahaha.length > 1){ hahaha = hahaha.substring(0 , hahaha.length-1); } else{ hahaha = sum.pop(); if(hahaha.length == 1){ hahaha = ""; } else if(hahaha.length > 1){ hahaha = hahaha.substring(0 , hahaha.length-1); } } } else if(num=="="){ if(hahaha != "") sum.push(parseFloat(hahaha)); var lc = qianzhui(sum); var ly = hhhhhhhh(lc); document.getElementById("accepDate").value += "="+ly; sum = []; hahaha = ""; } else{ if(hahaha != "") sum.push(parseFloat(hahaha)); hahaha=""; sum.push(num); document.getElementById("accepDate").value += num; } } </script> <script type="text/javascript"> function qianzhui(lists){ var a = []; var b = []; while(lists.length > 0){ var s = lists.pop(); if(typeof s == "number") a.push(s) else{ while(b.length>0){ var i = b[b.length - 1]; if(compares(i , s)){ a.push(b.pop()); } else break; } b.push(s); } } while(b.length>0) a.push(b.pop()); return a; } function compares(q , w){ if(q=="+" || q=="-") q = 1; else q = 2; if(w=="*" || w=="/") w = 2; else w = 1; return q>w; } function hhhhhhhh(lists){ var zuizhong = []; while(lists.length > 0){ var counter = lists.shift(); if(typeof counter == "number") zuizhong.push(counter); else{ var cs = zuizhong.pop(); zuizhong.push(dmw(cs , counter , zuizhong.pop() )); } } return zuizhong[0]; } function dmw(a , b , c){ if(b=="+") return a+c; else if(b=="-") return a-c; else if(b=="*") return a*c; else return a/c; } </script> </body> </html>