javascript实现编写网页版计算器
作者:小白变怪兽 时间:2024-04-23 09:26:25
本篇主要记录的是利用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>
来源:https://blog.csdn.net/u013558749/article/details/53003127
标签:js,计算器
0
投稿
猜你喜欢
儿童python练习实例
2023-12-13 04:26:32
对pytorch中x = x.view(x.size(0), -1) 的理解说明
2022-04-14 00:02:53
解读sql中timestamp和datetime之间的转换
2024-01-26 18:59:14
JavaScript中实现字符串的取左取右(实现left和right功能)
2009-07-20 12:39:00
python使用Apriori算法进行关联性解析
2022-08-15 13:02:10
导入tensorflow时报错:cannot import name 'abs'的解决
2023-03-19 12:56:46
返回SQL执行时间的存储过程
2024-01-16 15:22:06
二种python发送邮件实例讲解(python发邮件附件可以使用email模块实现)
2022-08-18 14:01:35
oracle怎样修改表名、列名、字段类型、添加表列、删除表列
2010-07-23 11:10:00
使用bandit对目标python代码进行安全函数扫描的案例分析
2021-04-07 02:01:22
MySQL批量SQL插入性能优化详解
2024-01-21 15:25:59
python时间与Unix时间戳相互转换方法详解
2023-07-11 02:09:12
使用Python实现画一个中国地图
2023-10-01 00:39:36
bootstrapTable+ajax加载数据 refresh更新数据
2023-10-18 13:21:13
Python实现带百分比的进度条
2022-03-10 00:43:47
Python使用draw类绘制图形示例讲解
2022-04-06 01:16:31
oracle保留两位小数解决方案
2024-01-25 03:22:37
python爬虫scrapy基于CrawlSpider类的全站数据爬取示例解析
2022-12-17 22:26:30
Golang Gin局部和全局中间件使用详解
2023-07-10 03:03:00
python 判断文件或文件夹是否存在
2021-06-30 05:56:55