国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

js實現(xiàn)簡單計算器

2019-11-20 11:12:45
字體:
供稿:網(wǎng)友

參考部分資料,編寫一個簡單的計算器案例,雖然完成了正常需求,但是也有不滿之處,待后續(xù)實力提升后再來補充,先把不足之處列出:

  1:本來打算只要打開頁面,計算器的輸入框會顯示一個默認(rèn)為0的狀態(tài),但是在輸入框加入默認(rèn)顯示為0的時候,選擇數(shù)據(jù)輸入時,該0會顯示輸入數(shù)字的前面,例如”0123“,由于能力有限,待后續(xù)實力提升再來補充完善!

  2:目前只能實現(xiàn)鼠標(biāo)控制選擇按鈕,待完善鍵盤錄入功能。

  3:乘法的那個符號在本來想改成”ד這個符號的,待后續(xù)完善。

  附圖片一張:

  html部分:

<!DOCTYPE html><html lang="en"><head>  <meta charset="utf-8">  <title>計算器</title></head><body onload="onLoad()"><div id="calculator">  <div class="LOGO">    <span class="name">簡單的計算器</span>    <span class="verson">@liumobai v1.0</span>  </div>  <div id="shuRu">    <!--screen輸入欄-->    <div class="screen">      <input type="text" id="screenName" name="screenName" class="screen" value="" onfocus="jsq(this)">    </div>  </div>  <div id="keys">    <!-- operators and other keys -->    <!--第一排-->    <input type="button" id="7" onclick="jsq(this.id)" value="7" class="buttons">    <input type="button" id="8" onclick="jsq(this.id)" value="8" class="buttons">    <input type="button" id="9" onclick="jsq(this.id)" value="9" class="buttons">    <input type="button" id="Back" onclick="tuiGe()" value="Back" class="buttons">    <input type="button" id="C" onclick="clearNum()" value="C" class="buttons" style="margin-right:0px">    <!--第二排-->    <input type="button" id="4" onclick="jsq(this.id)" value="4" class="buttons">    <input type="button" id="5" onclick="jsq(this.id)" value="5" class="buttons">    <input type="button" id="6" onclick="jsq(this.id)" value="6" class="buttons">    <input type="button" id="*" onclick="jsq(this.id)" value="*" class="buttons">    <input type="button" id="/" onclick="jsq(this.id)" value="/" class="buttons" style="margin-right:0px">    <!--第三排-->    <input type="button" id="1" onclick="jsq(this.id)" value="1" class="buttons">    <input type="button" id="2" onclick="jsq(this.id)" value="2" class="buttons">    <input type="button" id="3" onclick="jsq(this.id)" value="3" class="buttons">    <input type="button" id="+" onclick="jsq(this.id)" value="+" class="buttons">    <input type="button" id="-" onclick="jsq(this.id)" value="-" class="buttons" style="margin-right:0px">    <!--第四排-->    <input type="button" id="0" onclick="jsq(this.id)" value="0" class="buttons">    <input type="button" id="00" onclick="jsq(this.id)" value="00" class="buttons">    <input type="button" id="." onclick="jsq(this.id)" value="." class="buttons">    <input type="button" id="%" onclick="jsq(this.id)" value="%" class="buttons">    <input type="button" id="eva" onclick="eva()" value="=" class="buttons" style="margin-right:0px">  </div>  <div class="footer">    <span class="aside">歡迎使用JavaScript計算器</span>      <span class="link">        <a href="#" title="聲明" target="_blank">反饋</a>      </span>  </div></div></body></html>

  JS部分:

<script>  var num = 0; // 定義第一個輸入的數(shù)據(jù)  function jsq(num) {    //獲取當(dāng)前輸入    document.getElementById('screenName').value += document.getElementById(num).value;  }  function eva() {    //計算輸入結(jié)果    document.getElementById("screenName").value = eval(document.getElementById("screenName").value);  }  function clearNum() {    //清0    document.getElementById("screenName").value = null;    document.getElementById("screenName").focus();  }  function tuiGe() {    //退格    var arr = document.getElementById("screenName");    arr.value = arr.value.substring(0, arr.value.length - 1);  }  function onLoad(){    //加載完畢后光標(biāo)自動對應(yīng)到輸入框    document.getElementById("screenName").focus();  }</script>

  CSS部分: 

/*Basic reset*/*{  margin:0;  padding:0;  box-sizing: border-box;  font: 14px Arial,sans-serif;}html{  height:100%;  background-color:lightslategrey;}#calculator{  margin: 15px auto;  width:330px;  height:400px;  border: 1px solid lightgray;  background-color:darkgrey;  padding:15px;}/*LOGO*/.LOGO{  height:20px;}.LOGO .name{  float:left;  line-height:30px;}.LOGO .verson{  float:right;  line-height:30px;}/*screen*/#shuRu{  margin-top:15px;}.screen{  margin-top:5px;  width:300px;  height:40px;  text-align: right;  padding-right:10px;  font-size:20px;}#keys{  border:1px solid lightgray;  height:223px;  margin-top:25px;  padding:8px;}#keys .last{  margin-right:0px;}.footer{  margin-top:20px;  height:20px;}.footer .link{  float:right;}#keys .buttons{  float:left;  width: 42px;  height: 36px;  text-align:center;  background-color:lightgray;  margin: 0 17px 20px 0;}

接下來再給大家分享一則實例

<html><head>    <title>Untitled</title>    <style type="text/css">       input[type=button]       {           width:25px;           height:25px;       }    </style>    <script type="text/javascript">       var result=0;      var point=false;       //判斷是小數(shù)點前還是后      var multiple=0.1;         //初始化小數(shù)點后的倍率      var sort=0;              //標(biāo)記加減乘除      var temp=0;                //記錄上一輪結(jié)果      function onbutton0()    //數(shù)字按鈕動作       {         var name=document.getElementByIdx_x("show");           if(!point) result=10*result+0;       //小數(shù)點前的處理           else                                    //小數(shù)點后的處理           {              result=result+multiple*0;              multiple=multiple*0.1;           }           name.value=String(result);       }       function onbutton1()       {         var name=document.getElementByIdx_x("show");           if(!point) result=10*result+1;           else           {              result=result+multiple*1;              multiple=multiple*0.1;           }           name.value=String(result);       }       function onbutton2()       {         var name=document.getElementByIdx_x("show");           if(!point) result=10*result+2;           else           {              result=result+multiple*2;              multiple=multiple*0.1;           }           name.value=String(result);       }       function onbutton3()       {         var name=document.getElementByIdx_x("show");           if(!point) result=10*result+3;           else           {              result=result+multiple*3;              multiple=multiple*0.1;           }           name.value=String(result);       }       function onbutton4()       {         var name=document.getElementByIdx_x("show");           if(!point) result=10*result+4;           else           {              result=result+multiple*4;              multiple=multiple*0.1;           }           name.value=String(result);       }       function onbutton5()       {         var name=document.getElementByIdx_x("show");           if(!point) result=10*result+5;           else           {              result=result+multiple*5;              multiple=multiple*0.1;           }           name.value=String(result);       }       function onbutton6()       {         var name=document.getElementByIdx_x("show");           if(!point) result=10*result+6;           else           {              result=result+multiple*6;              multiple=multiple*0.1;           }           name.value=String(result);       }       function onbutton7()       {         var name=document.getElementByIdx_x("show");           if(!point) result=10*result+7;           else           {              result=result+multiple*7;              multiple=multiple*0.1;           }           name.value=String(result);       }       function onbutton8()       {         var name=document.getElementByIdx_x("show");           if(!point) result=10*result+8;           else           {              result=result+multiple*8;              multiple=multiple*0.1;           }           name.value=String(result);       }       function onbutton9()       {         var name=document.getElementByIdx_x("show");           if(!point) result=10*result+9;           else           {              result=result+multiple*9;              multiple=multiple*0.1;           }           name.value=String(result);       }       function onbutton_point()           //小數(shù)點按鈕       {          var name=document.getElementByIdx_x("show");           point=true;           name.value=String(result)+".";       }       function onbutton_back()        //退格按鈕       {           var name=document.getElementByIdx_x("show");           var temp=name.value;           name.value="";           for(var i=0;i<temp.length-1;i++)              name.value+=temp[i];       }       function onbutton_plus()       {           var name=document.getElementByIdx_x("show");           point=false;           multiple=0.1;           switch (sort)                       //遇到下一個操作符時判斷上一個操作符是什么,并進(jìn)行上一個操作符的計算           {                                  //eg:1+2+3=  遇到第二個+時判斷前一個符號,發(fā)現(xiàn)是+則進(jìn)行+運算,得到3賦給result              case 1:result=result+temp;                   break;              case 2:result=temp-result;                   break;              case 3:result=temp*result;                   break;              case 4:result=temp/result;                   break;           }           sort=1;           temp=result;           result=0;           name.value="0";       }       function onbutton_minus()       {           var name=document.getElementByIdx_x("show");           point=false;           multiple=0.1;           switch (sort)           {              case 1:result=result+temp;                   break;              case 2:result=temp-result;                   break;              case 3:result=temp*result;                   break;              case 4:result=temp/result;                   break;           }           sort=2;           temp=result;           result=0;           name.value="0";       }       function onbutton_mult()       {           var name=document.getElementByIdx_x("show");           point=false;           multiple=0.1;           switch (sort)           {              case 1:result=result+temp;                   break;              case 2:result=temp-result;                   break;              case 3:result=temp*result;                   break;              case 4:result=temp/result;                   break;           }           sort=3;           temp=result;           result=0;           name.value="0";       }       function onbutton_div()       {           var name=document.getElementByIdx_x("show");           point=false;           multiple=0.1;           switch (sort)           {              case 1:result=result+temp;                   break;              case 2:result=temp-result;                   break;              case 3:result=temp*result;                   break;              case 4:result=temp/result;                   break;           }           sort=4;           temp=result;           result=0;           name.value="0";       }       function onbutton_equal()       {           var name=document.getElementByIdx_x("show");           point=false;                //重置           multiple=0.1;               //重置           switch (sort)           {              case 1:result=result+temp;                   break;              case 2:result=temp-result;                   break;              case 3:result=temp*result;                   break;              case 4:result=temp/result;                   break;           }           sort=0;                       //重置           temp=result;           result=0;           name.value=String(temp);       }       function onbutton_clear()   //重置為初始狀態(tài)       {           result=0;         point=false;               multiple=0.1;        //初始化小數(shù)點后的倍率         sort=0;             //標(biāo)記加減乘除         temp=0;               //記錄上一輪結(jié)果         var name=document.getElementByIdx_x("show");         name.value="0";       }    </script></head> <body>    <table align="center">      <tr>        <td colspan="5"><input type="text" value="0" id="show"></td>      </tr>      <tr>         <td><input type="button" value="7" onclick="onbutton7();"></td>         <td><input type="button" value="8" onclick="onbutton8();"></td>         <td><input type="button" value="9" onclick="onbutton9();"></td>         <td><input type="button" value="/" onclick="onbutton_div();"></td>         <td><input type="button" value="<" onclick="onbutton_back();"></td>      </tr>      <tr>        <td><input type="button" value="4" onclick="onbutton4();"></td>         <td><input type="button" value="5" onclick="onbutton5();"></td>         <td><input type="button" value="6" onclick="onbutton6();"></td>         <td><input type="button" value="*" onclick="onbutton_mult();"></td>         <td><input type="button" value="C" onclick="onbutton_clear();"></td>      </tr>      <tr>        <td><input type="button" value="1" onclick="onbutton1();"></td>         <td><input type="button" value="2" onclick="onbutton2();"></td>         <td><input type="button" value="3" onclick="onbutton3();"></td>         <td><input type="button" value="-" onclick="onbutton_minus();"></td>         <td rowspan="2"><input type="button" value="=" style="width:25px;height:57px;" onclick="onbutton_equal();"></td>      </tr>      <tr>        <td colspan="2"><input type="button" value="0" style="width:57px;height:25px;" onclick="onbutton0();"></td>         <td><input type="button" value="." onclick="onbutton_point();"></td>         <td><input type="button" value="+" onclick="onbutton_plus();"></td>      </tr>   </table></body></html>

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 渑池县| 东方市| 肃南| 荥经县| 青河县| 志丹县| 团风县| 广灵县| 盐边县| 文化| 大丰市| 佛坪县| 武山县| 博客| 阳山县| 济源市| 额敏县| 兴仁县| 上犹县| 南郑县| 克什克腾旗| 双流县| 阜城县| 正阳县| 湘潭市| 镇雄县| 游戏| 陇西县| 汝阳县| 遵化市| 西宁市| 扶绥县| 六安市| 万载县| 涿鹿县| 西平县| 信阳市| 若羌县| 南和县| 康保县| 太保市|