简易计算器项目

项目需求

  • 使用html写出计算器的框架,设置最上方的文本框,显示但不可输入。
  • 使用css设置结构样式,设置宽高位置,背景颜色,字体大小等
  • 使用js封装函数,实现计算器的加减乘除,清零,清屏等。

 

点击数字显示

image.png

点击c,清零

image.png

点击“=”号,显示计算结果

image.png

点击“+/-”号,显示数字的相反数

image.png

点击“←”,回退键

image.png

点击d,跳转到其他页面

image.png

判断文本框是否为空

image.png

效果图

image.png

html部分

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>简易计算器</title>
	<link rel="stylesheet" type="text/css" href="index.css">
</head>
<body>
	<div class="main" id="main">
		<div class="div1">
			<input type="text" class="inp1" id="num" disabled="disabled">
		</div>
		<div class="div2">
			<input type="button" value="c" onclick="reset()">
			<input type="button" value="←" onclick="back()">
			<input type="button" value="+/-" onclick="sign()">
			<input type="button" value="/" onclick="num_click('/')">

			<input type="button" value="1" onclick="num_click(1)">
			<input type="button" value="2" onclick="num_click(2)">
			<input type="button" value="3" onclick="num_click(3)">
			<input type="button" value="*" onclick="num_click('*')">

			<input type="button" value="4" onclick="num_click(4)">
			<input type="button" value="5" onclick="num_click(5)">
			<input type="button" value="6" onclick="num_click(6)">
			<input type="button" value="-" onclick="num_click('-')">

			<input type="button" value="7" onclick="num_click(7)">
			<input type="button" value="8" onclick="num_click(8)">
			<input type="button" value="9" onclick="num_click(9)">
			<input type="button" value="+" onclick="num_click('+')">

			<input type="button" value="0" onclick="num_click(0)">
			<input type="button" value="." onclick="num_click('.')">
			<input type="button" value="=" onclick="result()">
			<input type="button" value="d" onclick="ck()">
		</div>
	</div>
	<script type="text/javascript" src="index.js"></script>
</body>
</html>

CSS部分

*{
	margin:0 auto;
	padding:0;
}

.main{
	width:400px;
	height:430px;
	margin:50px auto;
	background-color: rgba(225,225,225,0.9);
	padding:20px;
	text-align: center;
}

/*为输出结果框设置样式*/
.inp1{
	margin-bottom: 30px;
	width:100%;
	height:50px;
	font-size:24px;
	text-align: right;
	background-color: white;
}

/*计算器上按钮的大小*/
.div2 input{
	width:90px;
	height:60px;
	background-color: white;
	border:none;
	margin:5px;
	float:left;
	font-size:20px;
	font-weight: bold;
}

js部分

var str;
var s;

// 验证文本框是否为空
function isNull(n){
	if(n=="0"||n.length==0){
		return true;
	}else{
		return false;
	}
}

// 显示数字
function num_click(n){
	str=document.getElementById("num");
	if(isNull(str.value)){
		str.value=n;
	}else{
		str.value=str.value+n;
	}
}

// 清零
function reset(){
	str=document.getElementById("num");
	str.value=0;
}

// =
function result(){
	str=document.getElementById("num");
	s=eval(str.value);
	str.value=s;
}

// 相反数
function sign(){
	num.value*=-1;
}

// 删除最后一个字符,回退键
function back(){
	str=document.getElementById("num");
	str.value=str.value.slice(0,str.value.length-1);
	if(isNull(str.value)){//全部删除后显示0
		str.value=0;
	}
	return str.value;
}

// 点击d跳转到百度页面
function ck(){
	window.open("http://www.baidu.com");
}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值