javascript實現(xiàn)簡單計算器效果(推薦)
來源:易賢網(wǎng) 閱讀:1137 次 日期:2016-07-08 09:40:44
溫馨提示:易賢網(wǎng)小編為您整理了“javascript實現(xiàn)簡單計算器效果(推薦)”,方便廣大網(wǎng)友查閱!

下面小編就為大家?guī)硪黄猨avascript實現(xiàn)簡單計算器效果【推薦】。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考

最終效果如下圖-2,有bug:就是整數(shù)后點擊%號結果正確,如果小數(shù)后面點擊%的話結果就錯誤!其他都正常,求指點:input的value是string類型的,在JS中改如何正確處理下圖-1中的if部分??

名單

HTML代碼如下

<body>

<div id="calculator">

  <div class="LOGO">

    <span class="name">簡單的計算器</span>

    <span class="verson">@walker</span>

  </div>

  <div id="shuRu">

    <!--screen輸入欄-->

    <div class="screen">

      <input type="text" id="screenName" name="screenName" class="screen">

    </div>

  </div>

  <div id="keys">

    <!-- j -->

    <!--第一排-->

    <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="X" 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>

CSS代碼如下:

<style>

    /*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;

}

  </style>

javascript代碼如下:

<script> 

    var num = 0; // 定義第一個輸入的數(shù)據(jù) 

    function jsq(num) { 

      //獲取當前輸入 

      if(num=="%"){ 

        document.getElementById('screenName').value=Math.round(document.getElementById('screenName').value)/100; 

      }else{ 

        document.getElementById('screenName').value += document.getElementById(num).value; 

      } 

    } 

    function eva() { 

      //計算輸入結果 

      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); 

    } 

  </script> 

以上這篇javascript實現(xiàn)簡單計算器效果【推薦】就是小編分享給大家的全部內容了,希望能給大家一個參考

更多信息請查看網(wǎng)絡編程
易賢網(wǎng)手機網(wǎng)站地址:javascript實現(xiàn)簡單計算器效果(推薦)

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網(wǎng)