首页 > 其他分享 >js应用--简单计算器

js应用--简单计算器

时间:2023-05-30 11:15:07浏览次数:34  
标签:flex -- top js width html 计算器

先根据常见计算器设计界面的大致布局:

 根据以前的html和css知识,在页面上实现大致的样子

html(index.html):

 1 <!DOCTYPE html>
 2 <html>
 3     <head>
 4         <meta charset="utf-8" />
 5         <title>简单计算器</title>
 6         <link rel="stylesheet" href="css/1.css">
 7         <script src="js/1.js"></script>
 8     </head>
 9     <body>
10         <div id="d0">
11             <div id="d1">
12                 <input type="text" id="t1"/>
13             </div>
14             <div id="d2">
15                 <input type="button" class="b" value="C"/>
16             </div>
17             <div id="d3">                
18                 <input type="button" class="b" value="7"/>
19                 <input type="button" class="b" value="8"/>
20                 <input type="button" class="b" value="9"/>
21                 <input type="button" class="b" value="/"/>
22                 <input type="button" class="b" value="4"/>
23                 <input type="button" class="b" value="5"/>
24                 <input type="button" class="b" value="6"/>
25                 <input type="button" class="b" value="*"/>
26                 <input type="button" class="b" value="1"/>
27                 <input type="button" class="b" value="2"/>
28                 <input type="button" class="b" value="3"/>
29                 <input type="button" class="b" value="-"/>
30                 <input type="button" class="b" value="0"/>
31                 <input type="button" class="b" value="."/>
32                 <input type="button" class="b" value="="/>
33                 <input type="button" class="b" value="+"/>
34             </div>
35         </div>
36     </body>
37 </html>

CSS(1.css):

 1 body{
 2     display: flex;
 3     justify-content: center;
 4 }
 5 #d0{
 6     border: 1px solid;
 7     width: 400px;
 8     text-align: center;
 9     margin-top: 20px;
10     padding-top: 30px;
11     padding-bottom: 30px;
12 }
13 #d2{
14     margin-top: 20px;
15     text-align: right;
16 }
17 #d3{
18     display: flex;
19     flex-wrap: wrap;
20 }
21 #t1{
22     width: 380px;
23     font-size: 200%;
24 }
25 .b{
26     width: 80px;
27     height: 60px;
28     margin: 10px;
29     font-size: 180%;
30 }

效果:

 为界面上的控件添加处理的函数(1.js):

 1 var t;
 2 function myinit()
 3 {
 4     let a=document.querySelectorAll(".b");
 5     t=document.querySelector("#t1");
 6     t.value="";
 7     for(i=0;i<a.length;i++)
 8     {
 9         a[i].onclick=mybutton;
10     }
11     document.querySelector("#c").onclick=function (){t.value="";};
12     document.querySelector("#eq").onclick=function (){t.value=eval(t.value);};
13 }
14 function mybutton()
15 {
16     t.value+=this.value;
17 }

第1行的t是全局变量。

第2-13行的函数“myinit”需要在页面元素加载完成后执行。故应把html的第9行改为 <body onl oad="myinit()"> 

第16行的this表示触发该函数的控件。

也可以把14-17行的mybutton函数在第9行写成匿名函数。

调整文本框内容靠右显示,简单计算器即可正常工作。

标签:flex,--,top,js,width,html,计算器
From: https://www.cnblogs.com/wanjinliu/p/17437240.html

相关文章

  • 红外光学雨量传感器的场景应用
    红外光学雨量传感器的场景应用 红外光学雨量传感器是一种基于红外线技术的雨量监测设备,它可以通过检测雨滴的信号强度来确定降雨强度和降雨量。红外光学雨量传感器具有使用方便、响应速度快、精度高等优点,因此在许多领域得到了广泛的应用。首先,红外光学雨量传感器可以用于气......
  • uniapp中执行完一个方法在执行另一个
    functionrequest(url,data={},method="GET"){ returnnewPromise(function(resolve,reject){   uni.request({     url:url,     data:data,     method:method,     header:{       'Content-Type':'application/json;cha......
  • 2万多公务员考试宝典题库ACCESS\EXCEL\SQLite3数据库
    虽然之前弄到过《1万多公务员考试基础知识题库ACCESS数据库》,但完全没有今天这份数据库那么美。今天这份数据是从一款考试学习类的软件中破解提取出来的,据数非常不错,不但有大小分类,而且题型包含:单项选择题(25575条)、简答题(942条)。题库中有些包含图片问答,或者选项中有含图片,如:......
  • c语言学习day2(定义变量)
    1.常量const是constant的缩写表示常量 浮点数   double 当输入输出整数时使用%d当输入输出浮点型数时使用%lf数据类型 ......
  • 全局解释器锁GIL
    GIL的作用是在同一时间只允许一个线程执行Python字节码,即保证了在解释器级别上同一时刻只有一个线程执行Python代码优点: ......
  • 信息资产
    一、用户身份安全(1)用户密码hash用户密码经过sha256哈希过后生成不可逆固定长度摘要,密态存储在这是一个Python脚本,用于实现对文件的加密和解密操作。具体来说,脚本中采用了base64算法、国密SM2算法和SM4算法。在主函数中,通过传递源文件路径和加密后文件路径,对文件进行加密和......
  • 第八单元 数组与集合
    1.数组(Array)数组是一个存储相同类型元素的固定大小的顺序集合。数组是用来存储数据的集合,通常认为数组是一个同一类型变量的集合。声明数组变量并不是声明number0、number1、...、number99一个个单独的变量,而是声明一个就像numbers这样的变量,然后使用numbers[0]、numbers[......
  • 使用原始的jar命令打包
    有些环境由于安全考虑,上传东西很不方便,每次排查问题,都需要刻盘,杀毒扫描,然后审批才能上传,特别繁琐所以想着在没有maven的情况下,我怎么去打包更新呢,首先想到的是将源码传到服务器上,这样后续可以在服务器上进行修改,配合javac和jar命令完成打包操作,可以完成jar包的更新,......
  • vue模拟el-table演示插槽用法
    vue模拟el-table演示插槽用法很多人知道插槽分为三种,但是实际到elementui当中为什么这么用,就一脸懵逼,接下来就跟大家聊一聊插槽在elementui中的应用,并且自己写一个类似el-table的组件vue的slot分为三种::匿名插槽,具名插槽,作用域插槽,主要作用:让父组件可以向子组件指定位置插入......
  • 离散数学代数系统内容总结
    前言:  代数系统这部分内容,重点在二元运算(二元运算的基本定义及相关的性质),和群和子群(判断一个代数系统是否是群,群的次幂计算,群中元素的阶)。二元运算:  1.什么是二元运算:   设S为集合,函数f:S×S→S就称为S上的一个二元运算。     S中任何两个元素都可......