首页 > 其他分享 >html、css、js实现的一个简单计算器

html、css、js实现的一个简单计算器

时间:2023-08-17 17:45:07浏览次数:35  
标签:translateY color 2px transform js html shadow display css

title: html、css、js实现的一个简单计算器
date: 2023-07-17 21:51:46
categories: CTF-Web入门
description: 简易计算器

主要代码来自runoob的计算器示例,只是精简了一下,把在js里监听完成的清除输入区也写成了一个函数,点击按钮的时候就自动调用了。这里面是有clear函数的,导致我写的clear函数和他发生了冲突,发现之后函数名改成fuck就可以正常清除了。(fuck是清除键)

<!DOCTYPE html>
<html>
 
<head>
	<style>
        /* Basic Reset */
        * {
        	border: none;
        	font-family: 'Open Sans', sans-serif;
        	margin: 0;
        	padding: 0;
        }
        body {
        
        }
        .center {
        	background-color: #fff;
        	border-radius: 50%;
        	height: 600px;
        	margin: auto;
        	width: 600px;
        }
        h1 {
        	color: #495678;
        	font-size: 30px;	
        	margin-top: 20px;
        	padding-top: 50px;
        	display: block;
        	text-align: center;
        	text-decoration: none;
        }
        form {
        	background-color: #495678;
        	box-shadow: 4px 4px #3d4a65;
        	margin: 40px auto;
        	padding: 40px 0 30px 40px;	
        	width: 280px;
        }
        .btn {
        	outline: none;
        	cursor: pointer;
        	font-size: 20px;
        	height: 45px;
        	margin: 5px 0 5px 10px;
        	width: 45px;
        }
        .btn:first-child {
        	margin: 5px 0 5px 10px;
        }
        .btn, #display, form {
        	border-radius: 25px;
        }
        #display {
        	outline: none;
        	background-color: #98d1dc;
        	box-shadow: inset 6px 6px 0px #3facc0;
        	color: #dededc;
        	font-size: 20px;
        	height: 47px;
        	text-align: right;
        	width: 165px;
        	padding-right: 10px;
        	margin-left: 10px;
        }
        .number {
        	background-color: #72778b;
        	box-shadow: 0 5px #5f6680;
        	color: #dededc;
        }
        .number:active {
        	box-shadow: 0 2px #5f6680;
          	-webkit-transform: translateY(2px);
          	-ms-transform: translateY(2px);
          	-moz-tranform: translateY(2px);
          	transform: translateY(2px);
        }
        .operator {
        	background-color: #dededc;
        	box-shadow: 0 5px #bebebe;
        	color: #72778b;
        }
        .operator:active {
        	box-shadow: 0 2px #bebebe;
          	-webkit-transform: translateY(2px);
          	-ms-transform: translateY(2px);
          	-moz-tranform: translateY(2px);
          	transform: translateY(2px);
        }
        .other {
        	background-color: #e3844c;
        	box-shadow: 0 5px #e76a3d;
        	color: #dededc;
        }
        .other:active {
        	box-shadow: 0 2px #e76a3d;
          	-webkit-transform: translateY(2px);
          	-ms-transform: translateY(2px);
          	-moz-tranform: translateY(2px);
          	transform: translateY(2px);
        }
    </style>
</head>
 
<body>
    <div class="center">
        <h1>简单计算器</h1>
        <form name="calculator">
            <input type="button" id="clear" class="btn other" value="fuck" onclick="fuck();">
            <input type="text" id="display">
            <br>
            <input type="button" class="btn number" value="7" onclick="get(this.value);">
            <input type="button" class="btn number" value="8" onclick="get(this.value);">
            <input type="button" class="btn number" value="9" onclick="get(this.value);">
            <input type="button" class="btn operator" value="+" onclick="get(this.value);">
            <br>
            <input type="button" class="btn number" value="4" onclick="get(this.value);">
            <input type="button" class="btn number" value="5" onclick="get(this.value);">
            <input type="button" class="btn number" value="6" onclick="get(this.value);">
            <input type="button" class="btn operator" value="*" onclick="get(this.value);">
            <br>
            <input type="button" class="btn number" value="1" onclick="get(this.value);">
            <input type="button" class="btn number" value="2" onclick="get(this.value);">
            <input type="button" class="btn number" value="3" onclick="get(this.value);">
            <input type="button" class="btn operator" value="-" onclick="get(this.value);">
            <br>
            <input type="button" class="btn number" value="0" onclick="get(this.value);">
            <input type="button" class="btn operator" value="." onclick="get(this.value);">
            <input type="button" class="btn operator" value="/" onclick="get(this.value);">
            <input type="button" class="btn other" value="=" onclick="calculates();">
        </form>
    </div>
    
    <script>
        /* limpa o display */ 
        function fuck(){
			document.getElementById("display").value="";
		};
        /* recebe os valores */
        function get(value) {
        	document.getElementById("display").value += value; 
        };
        
        /* calcula */
        function calculates() {
        	var result = 0;
        	result = document.getElementById("display").value;
        	document.getElementById("display").value = "";
        	document.getElementById("display").value = eval(result);
        };
    </script>
</body>
 
</html>

标签:translateY,color,2px,transform,js,html,shadow,display,css
From: https://www.cnblogs.com/yoo2i/p/17638329.html

相关文章

  • JScript 脚本中包含别一个文件
    如何在一个Jscript脚本中包含两外的一个Jscript脚本?可以这样做:var tsvar fso = new ActiveXObject( "Scripting.FileSystemObject" );var ForReading = 1;ts = fso.OpenTextFile("c:\\Scripts\\Functions.js", ForReading);s = ts.ReadAll();eval(s);......
  • 关于Node.js 构建中遇到node-gyp报错问题的解决方案记录
    项目今天进行版本更新,在走阿里云流水线的时候,出现了Node.js构建过程报错问题,抱歉详情截图如下: 经过反复排查,最终发现是因为阿里云的npm仓库的问题,于是果断更换npm仓库,执行命令如下:npmconfigsetregistryhttps://registry.npm.taobao.org然后重新 npmi--force 进行......
  • nodejs基本知识
    node.js1.node.js是什么组成是基于chromev8引擎的javas运行环境,让js脱离浏览器也可以运行。1.1. NodeJs用在哪里?1、网站(如express/koa等)2、im即时聊天(socket.io)3、api(移动端,pc,h5)4、httpproxy(淘宝首页)5、前端构建工具(grunt/gulp/bower/webpack/fis3…)6、写操作系......
  • JAVA SSH 连接服务器 去指定目录 检查文件 并读取json文件内容
    要使用JavaSSH连接服务器并检查文件,可以使用JSch库。以下是一个示例代码:importcom.jcraft.jsch.*;​importjava.io.BufferedReader;importjava.io.InputStream;importjava.io.InputStreamReader;​publicclassSSHExample{publicstaticvoidmain(String[]ar......
  • nodejs实现合并文件
    nodejs实现递归读取文件并合并成一个varfs=require("fs");varpath=require("path");functionreadFileList(dir,filesList=[]){constfiles=fs.readdirSync(dir);//console.log(files);files.forEach((item,index)=>{varfullPat......
  • html篇
    1.动态网页和静态网页的区别静态网页:代码和内容写好后,不会改变的网页。动态网页:代码和内容写好后,内容会随着时间,环境,数据库操作结果而改变的网页。2.块级元素和行内元素的区别块级元素:独占一行,可以定义宽高,默认宽度为100%;行内元素:多个元素可以放在同一行,除非超宽自动折行,不......
  • JS解析URL并获取URL参数值
    方法1:通过正则表达式(推荐)1.1定义获取指定参数值得函数,name为url的参数名functiongetQueryString(name){    letreg=newRegExp("(^|&)"+name+"=([^&]*)(&|$)","i");    letr=window.location.search.substr(1).match(reg);    if(r!=n......
  • Gson与FastJson详解
    Gson与FastJson详解Java与JSON做什么?将Java中的对象快速的转换为JSON格式的字符串.将JSON格式的字符串,转换为Java的对象.Gson将对象转换为JSON字符串转换JSON字符串的步骤:引入JAR包在需要转换JSON字符串的位置编写如下代码即可:Stringjson=newGson().toJSON(要转换的对象......
  • h5(html5)+css3前端笔记四
    Emmet语法1.生成标签直接输入标签名按tab键即可比如div然后tab键,就可以生成<div></div>2.如果想要生成多个相同标签加上*就可以了比如div*3就可以快速生成3个div3.如果有父子级关系的标签,可以用>比如ul>li就可以了4.如果有兄弟关系的标签,用+就可以了比如div+p5.如......
  • asp.net core Webapi中返回400错误中的‘Null集合属性序列化Json’情况
    当序列化Json时,有集合类型的属性的值为Null,则序列化后的json就有问题,不能通过asp.netcoreWebApi的校验 解决方法是:只需要对集合默认初始化即可......