本篇主要记录的是利用javscript实现一个网页计算器的效果,供大家参考,具体内容如下
话不多说,代码如下:
首先是html的代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>利用js实现网页版计算器</title>
<link rel="stylesheet" href="cal.css" >
</head>
<body>
<div id="container" class="container">
<input id="result" class="result">
<div id="cal" class="clearfix">
<div id="num" class="fl">
<div id="top" class="clearfix">
<input id="clear" type="button" value="C">
<input id="antonyms" type="button" value="+/-">
<input id="remainder" type="button" value="%">
</div>
<div id="bonttom" class="clearfix">
<input type="button" value="7">
<input type="button" value="8">
<input type="button" value="9">
<input type="button" value="4">
<input type="button" value="5">
<input type="button" value="6">
<input type="button" value="1">
<input type="button" value="2">
<input type="button" value="3">
<input class="zero" type="button" value="0">
<input type="button" value=".">
</div>
</div>
<div id="math" class="fr math">
<input type="button" value="/" onclick="onclicknum('/')">
<input type="button" value="*" onclick="onclicknum('*')">
<input type="button" value="+" onclick="onclicknum('+')">
<input type="button" value="-" onclick="onclicknum('-')">
</div>
<input id="res" type="button" value="=">
</div>
</div>
</body>
</html>
接下来是css样式代码:
* {
margin: 0px;
padding: 0px;
}
.clearfix:before, .clearfix:after {
content: '';
display: block;
}
.clearfix:after {
clear: both;
}
.clearfix {
_zoom: 1;
}
input {
display: block;
}
.container {
width: 240px;
height: 400px;
border: 2px solid #eb4509;
margin: 100px auto;
}
.fl {
float: left;
}
.fr {
float: right;
}
input {
width: 60px;
height: 60px;
border: 1px solid #000;
float: left;
background: #ddd;
font-size: 24px;
color: #eb4509;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.math input {
float: none;
}
input.zero {
width: 120px;
}
#num {
width: 180px;
}
#cal #math {
width: 60px;
}
.result {
width: 100%;
height: 100px;
line-height: 100px;
border: none;
background-color: #dfdfdf;
font-size: 30px;
float: none;
outline: none;
text-align: right;
padding-right: 20px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
最后上js代码:
<script type="text/javascript"> var numresult; var str; var flag; var bot = document.getElementById("bonttom"); var botInputs = bot.getElementsByTagName("input"); var clear = document.getElementById("clear"); var res = document.getElementById("res"); var math = document.getElementById("math"); var mathInputs = math.getElementsByTagName("input"); var antonymsBtn = document.getElementById("antonyms"); var remainderBtn = document.getElementById("remainder"); //点击数字以及加减乘除 imporIn(botInputs); // imporIn(mathInputs); function imporIn(eles) { for (var i = 0; i < eles.length; i++) { eles[i].onclick = function () { onclicknum(this.value); } } } //点击清空c按钮 clear.onclick = function () { onclickclear(); } //点击=号得到结果 res.onclick = function () { onclickresult(); } //点击+/- antonymsBtn.onclick = function () { antonyms(); } //点击% remainderBtn.onclick = function () { remainder(); } function onclicknum(nums) { if (flag) { console.log("num=" + nums); if (nums !== "/" && nums !== "+" && nums !== "-" && nums !== "*") { str.value = ""; console.log("aa" + nums); } } flag = false; str = document.getElementById("result"); str.value = str.value + nums; } //清空 function onclickclear() { str = document.getElementById("result"); str.value = ""; } //得到结果 function onclickresult() { str = document.getElementById("result"); numresult = eval(str.value); str.value = numresult; flag = true; } //正负数 function antonyms() { str = document.getElementById("result"); str.value = -str.value; } //% function remainder() { str = document.getElementById("result"); str.value = str.value / 100; } </script>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持华域联盟。
您可能感兴趣的文章:
- 原生JavaScript实现网页版计算器
- javascript实现计算器功能详解流程
- JavaScript实现简单计算器小功能
- js版实现计算器功能
- 原生js实现简易计算器
- 用javascript实现简单计算器
- js制作简易计算器
- 利用JavaScript写一个简单计算器
声明:本站(华域联盟www.cnhackhy.com)所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)