JS鍵盤版計(jì)算器的制作方法
本文實(shí)例為大家分享了js制作計(jì)算器的具體代碼,供大家參考,具體內(nèi)容如下
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
#show {
width: 232px;
height: 80px;
color: white;
border-radius: 5px 5px 0 0;
background-color: rgba(127, 128, 127, 1);
text-align: right;
border: none;
font-size: 45px;
outline: none;
}
table {
border: 1px solid black;
border-collapse: collapse;
width: 234px;
text-align: center;
font-size: 30px;
}
td {
height: 55px;
width: 57.5px;
background-color: wheat;
}
td:active {
background-color: coral;
}
.aperation {
background-color: rgb(245, 146, 62);
color: white;
}
#ape {
background-color: wheat;
color: #000000;
}
</style>
</head>
<body>
<div id="">
<input type="" id="show" />
<table border="1">
<tr>
<td id="clear">AC</td>
<td>+/-</td>
<td class="aperation" id="ape">%</td>
<td class="aperation">/</td>
</tr>
<tr>
<td class="num">7</td>
<td class="num">8</td>
<td class="num">9</td>
<td class="aperation">*</td>
</tr>
<tr>
<td class="num">4</td>
<td class="num">5</td>
<td class="num">6</td>
<td class="aperation">-</td>
</tr>
<tr>
<td class="num">1</td>
<td class="num">2</td>
<td class="num">3</td>
<td class="aperation">+</td>
</tr>
<tr>
<td colspan="2" class="num">0</td>
<td>.</td>
<td class="aperation" id="result">=</td>
</tr>
</table>
</div>
</body>
<script type="text/javascript">
//獲取數(shù)字的集合
var nums = document.getElementsByClassName("num");
//獲取操作符的集合
var options = document.getElementsByClassName("aperation");
//獲取等號(hào)
var result = document.getElementById("result");
//獲取歸0
var clear = document.getElementById("clear");
//獲取展示框
var show = document.getElementById("show");
//聲明用于保存內(nèi)容的三個(gè)變量
var numValue = ""; //存儲(chǔ)數(shù)字
var optionC = ""; //存儲(chǔ)操作符
var numTemp = ""; //存儲(chǔ)暫存值
//點(diǎn)擊數(shù)字鍵時(shí) 觸發(fā)事件
for(var i = 0; i < nums.length; i++) {
nums[i].onclick = function() {
if(numValue == "0") {
numValue = "";
}
numValue += this.innerHTML;
show.value = numValue;
}
}
//點(diǎn)擊操作鍵觸發(fā)事件
for(var i = 0; i < options.length - 1; i++) {
options[i].onclick = function() {
//先存儲(chǔ)之前記錄的數(shù)字
numTemp = numValue;
//記錄操作符
optionC = this.innerHTML;
//清除原有記錄的數(shù)字
numValue = "";
}
}
//等號(hào)操作
result.onclick = function() {
show.value = eval(numTemp + optionC + numValue);
}
//清零操作
clear.onclick = function() {
show.value = "0";
numValue = "";
optionC = "";
numTemp = "";
}
</script>
</html>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
前端使用axios實(shí)現(xiàn)下載文件功能的詳細(xì)過程
項(xiàng)目中經(jīng)常會(huì)遇到需要導(dǎo)出列表內(nèi)容,或者下載文件之類的需求,下面這篇文章主要給大家介紹了關(guān)于前端使用axios實(shí)現(xiàn)下載文件功能的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-08-08
微信小程序頁面調(diào)用自定義組件內(nèi)的事件詳解
這篇文章主要介紹了微信小程序頁面調(diào)用自定義組件內(nèi)的事件詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-09-09
用js+iframe形成頁面的一種遮罩效果的具體實(shí)現(xiàn)
用js形成頁面的一種遮罩效果,選擇想要進(jìn)行遮罩的窗口,在這里想要遮罩的是一個(gè)iframe窗口,具體的實(shí)現(xiàn)如下,感興趣的朋友可以參參考下2013-12-12
nest.js 使用express需要提供多個(gè)靜態(tài)目錄的操作方法
這篇文章主要介紹了nest.js 使用express需要提供多個(gè)靜態(tài)目錄的操作,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10
基于javascript實(shí)現(xiàn)窗口抖動(dòng)效果
這篇文章主要介紹了基于javascript實(shí)現(xiàn)窗口抖動(dòng)效果,需要的朋友可以參考下2016-01-01
JS實(shí)現(xiàn)jQuery的append功能
jQuery中可以直接使用$el.append()為元素添加字符串型dom, 但是最近轉(zhuǎn)戰(zhàn)Vue, 再使用jQuery明顯不合適了, 所以通過查找資料, 封裝一個(gè)可以實(shí)現(xiàn)同樣效果的方法.2021-05-05
基于three.js編寫的一個(gè)項(xiàng)目類示例代碼
這篇文章主要給大家介紹了關(guān)于基于three.js編寫的一個(gè)項(xiàng)目類的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2018-01-01

