<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>自制计算器</title>
<link href="css\bootstrap.css.map" rel="stylesheet" />
<script src="js\bootstrap.js"></script>
<script src='js\jquery-1.8.2.js'></script>
<script type="text/javascript">
$(function(){
var $btn=$("#calc")
// 取消已绑定的事件:
$btn.off('click');
$btn.click(function() {
var x=parseFloat($('#x').val()),
op=$('#op').val(),
y=parseFloat($('#y').val()),
r;
r=x+op+y;
document.getElementById("result").value=eval(r);
// alert('计算结果:'+r);
try{
if(isNaN(x)||isNaN(y)){
throw new Error("输入有误!");
}
}catch(e){
alert("输入有误!"+e);
}finally{
alert('计算结果:'+x+op+y+"="+eval(r));
}
}); //创建过去7天的数组
$("#calendar").click(function() {
var DateArray=[...Array(7).keys()].map(days=>new Date(Date.now()+86400000*days));
console.log(DateArray);
alert(DateArray);
});
//生成随机ID
$("#RanNum").click(function() {
//生成长度为11的随机字母数字字符串
var RanNum=Math.random().toString(36).substring(2);
//hg7znok52x
console.log(RanNum);
alert(RanNum);
});
//本地时间
$("#time").click(function() {
var time=setInterval(()=>document.getElementById("timeDiv").innerHTML=new Date().toLocaleString().slice(10,19))
});
//生成随机十六进制代码(生成随机颜色)如:'#c618b2']
$("#RanCode").click(function() {
var RanCode='#'+Math.floor(Math.random()*0xffffff).toString(16).padEnd(6,'0');
console.log(RanCode);
alert(RanCode);
});
//数组去重
$("#arrlist").click(function() {
var arr=Array[1,2,2,3,5,6,6,9,8];
var arred=[...new Set(arr)];
console.log(arred);
alert(arred);
});
//返回一个键盘(惊呆了)
//用字符串返回一个键盘图形
$("#Graphical").click(function() {
var Graphical=(_=>[..."`1234567890-=~~QWERTYUIOP[]\\~ASDFGHJKL;'~~ZXCVBNM,./~"].map(x=>(o+=`/${b='_'.repeat(w=x<y?2:' 667699'[x=["BS","TAB","CAPS","ENTER"][p++]||'SHIFT',p])}\\|`,m+=y+(x+' ').slice(0,w)+y+y,n+=y+b+y+y,l+=' __'+b)[73]&&(k.push(l,m,n,o),l='',m=n=o=y),m=n=o=y='|',p=l=k=[])&&k.join`
`)();
});
}); function calcul(){
var Graphical=(_=>[..."`1234567890-=~~QWERTYUIOP[]\\~ASDFGHJKL;'~~ZXCVBNM,./~"].map(x=>(o+=`/${b='_'.repeat(w=x<y?2:' 667699'[x=["BS","TAB","CAPS","ENTER"][p++]||'SHIFT',p])}\\|`,m+=y+(x+' ').slice(0,w)+y+y,n+=y+b+y+y,l+=' __'+b)[73]&&(k.push(l,m,n,o),l='',m=n=o=y),m=n=o=y='|',p=l=k=[])&&k.join`
`)();
}
</script>
</head>
<body onblur="calcul();">
<form>
<div id="calculateDiv">
<input type="text" id="x" />
<select name="option" id="op">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select>
<input type="text" id="y" />
=<input type="text" id="result"/>
<input class="btn btn-success" type="submit" style="text-align:center;margin:0px auto;font-size:14px;font-family:'微软雅黑'" value="计算" id="calc" />
</div>
</form>
<div>
<button id="calendar" value="">日历</button>
<button id="RanNum" value="">获取随机ID</button>
</div>
<div>
<button id="time" value="">获取本地时间</button>
<span id="timeDiv"></span>
<button id="RanCode" value="">获取随机颜色代码</button>
<button id="arrlist" value="">数组去重</button>
<button id="Graphical" value="">返回键盘图形</button>
</div>
</body>
</html>

HTML自制计算器的更多相关文章

  1. 用php实现简单的自制计算器

    存档: <!DOCTYPE html> <html> <head> <title>PHP实现计算器</title> </head> ...

  2. JS事件 编程练习-自制计算器 使用JS完成一个简单的计算器功能。实现2个输入框中输入整数后,点击第三个输入框能给出2个整数的加减乘除。

    编程练习 使用JS完成一个简单的计算器功能.实现2个输入框中输入整数后,点击第三个输入框能给出2个整数的加减乘除. 提示:获取元素的值设置和获取方法为:例:赋值:document.getElement ...

  3. 自制计算器 v1.1

    之前的v1.0版本功能还不够完善,这个版本一并做了修改. 代码,每个sub表示哪个按钮做了注释. Dim a, temp, ans As Integer Dim op As String Sub sh ...

  4. VB自制计算器

    使用visual basic编写. 绘制如下的按钮界面: 然后代码如下: Dim a, temp, ans As Integer Dim op As String Sub showans() Text ...

  5. JS-计算器制作

    不完善,接下来想着把运算符分开成一个一个的按钮... <!DOCTYPE html><html> <head> <meta charset="UTF ...

  6. 自制c#简易计算器

    这是一个课堂作业,我觉得作为一个简易的计算器不需要态度复杂的东西,可能还有一些bug,有空再慢慢加强. using System;using System.Collections.Generic;us ...

  7. 《自制编程语言》笔记:使用yacc与lex制作简单计算器

    1.代码 1.1)test.l 1.2)test.y 1.3)Makefile (因为是在linux环境下,所以使用了Makefile) 2.编译与运行 2.1)编译 2.2)运行 1.代码(也可以在 ...

  8. JS计算器(自制)

    <!doctype html><html><header><meta charset="utf-8"><script src= ...

  9. 栈的应用1——超级计算器(中缀与后缀表达式)C语言

    这里要学的程序主要用来实现一个功能——输入表达式输出结果,也就是一个计算器.效果如下: 这个程序主要有两个步骤:1.把中缀表达式转换为后缀表达式:2.计算后缀表达式的结果. 首先先明白几个问题: 1. ...

随机推荐

  1. 封装好的PDO类

    封装PDO类,方便使用: <?php header('content-type:text/html;charset=utf-8'); /** * 封装PDODB类 */ // 加载接口 // i ...

  2. Notepad++ ssh NppFTP链接linux

    Notepad++是一套非常有特色的自由软件的纯文字编辑器,有完整的中文化接口及支持多国语言编写的功能.现在用Notepad++来远程编辑Linux系统文本文件. Notepad++ 1.Linux操 ...

  3. 【Leetcode链表】反转链表 II(92)

    题目 反转从位置 m 到 n 的链表.请使用一趟扫描完成反转. 说明: 1 ≤ m ≤ n ≤ 链表长度. 示例: 输入: 1->2->3->4->5->NULL, m ...

  4. 预警| Confluence 高危漏洞被大规模利用,阿里云WAF接入即可防护,支持免费应急服务

    2019年4月4日,阿里云安全应急响应中心监测到Confluence 官方发布安全更新指出,Widget Connector 存在服务端模板注入漏洞,攻击者能利用此漏洞实现目录穿越遍历甚至远程命令执行 ...

  5. 如何不让EditText不获得焦点

    http://blog.csdn.net/get123/article/details/9004661

  6. 2018-9-30-VisualStudio-使用多个环境进行调试

    title author date CreateTime categories VisualStudio 使用多个环境进行调试 lindexi 2018-09-30 18:39:26 +0800 20 ...

  7. OpenStack组件系列☞horizon搭建

    第一步:部署horizon环境: 安装部署memcache 安装软件包 yum install memcached python-memcached 启动memcache并且设置开机自启动 syste ...

  8. 选用适合的ORACLE优化器

    ORACLE的优化器共有3种: a.  RULE (基于规则)   b. COST (基于成本)  c. CHOOSE (选择性) 设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER ...

  9. oracle函数 INSTR(C1,C2[,I[,J]])

    [功能]在一个字符串中搜索指定的字符,返回发现指定的字符的位置; [说明]多字节符(汉字.全角符等),按1个字符计算 [参数] C1    被搜索的字符串 C2    希望搜索的字符串 I     搜 ...

  10. epoll与fork

    使用epoll时,如果在调用epoll_create之后,调用了fork创建子进程,那么父子进程虽然有各自epoll实例的副本,但是在内核中,它们引用的是同一个实例.子进程向自己的epoll实例添加. ...