JS+CSS+HTML简单计算器
<!doctype html>
<html>
<head>
<title>计算器</title>
<meta charset="utf-8">
<script type="text/javascript">
//参数e用来接收传入的event事件
function cal(e){
//1.获取事件源,只处理button事件
//浏览器兼容性
var obj=e.srcElement || e.target;
if(obj.nodeName != "INPUT"){
return;
}
var value=obj.value;
var p=document.getElementById("screen");
if(value == "C"){
//2.如果是[C],清空p
p.innerText="";
}else if(value == "="){
//3.如果是[=],则运算
try{
var sum=parseFloat(eval("("+p.innerText+")")).toFixed(8);
p.innerText=sum;
}catch(e){
//发生异常,给予错误提示
p.innerText="Err";
}
}else{
//4.其他将value追加到p中
p.innerText=p.innerText+value;
}
}
</script>
<style type="text/css">
.panel{
border: 3px solid #ccc;
width: 160px;
margin: 150px auto;
}
p{
border: 1px solid #ccc;
height: 28px;
width: 70%;
margin: 5px 3px;
line-height: 28px;
font-family: '微软雅黑','文泉驿正体','黑体';
}
input{
display: block;
width: 30px;
height: 30px;
margin: 5px 5px;
background-color: #ccc;
border: 0;
float: left;
}
p{
display: block;
float: left;
}
</style>
</head>
<body>
<div class="panel" onclick="cal(event);">
<div class="display">
<p id="screen"></p>
<input type="button" value="C">
<!--此div用来消除浮动影响,设置为不可见-->
<div style="border:0;clear:left;"></div>
</div>
<div class="opreator">
<input type="button" value="7">
<input type="button" value="8">
<input type="button" value="9">
<input type="button" value="/">
<input type="button" value="4">
<input type="button" value="5">
<input type="button" value="6">
<input type="button" value="*">
<input type="button" value="1">
<input type="button" value="2">
<input type="button" value="3">
<input type="button" value="-">
<input type="button" value="0">
<input type="button" value=".">
<input type="button" value="=">
<input type="button" value="+">
<!--此div用来消除浮动影响,设置为不可见-->
<div style="border:0;clear:left;"></div>
</div>
</div>
</body>
</html>
JS+CSS+HTML简单计算器的更多相关文章
- js css 实现简单的计算器
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- JS CSS 网页 简单 右侧 悬浮
<!--右侧效果--> <script> $().ready(function() { $(".orm").hover(function() { $(thi ...
- js+css制作简单的轮播图带有定时功能
用纯css和JavaScript代码制作带有定时轮播功能的轮播图 <!DOCTYPE html> <html> <head> <meta charset=&q ...
- js实现一个简单计算器
代码如下,仅支持webkit <!DOCTYPE html><html> <head> <meta charset="UTF-8"> ...
- js+css实现简单下拉菜单
<head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312&qu ...
- js实现简单计算器
效果图: 刚开始做时没考虑到清零和退格两个功能,嘻嘻,后来加的整体与传统计算器比有点小瑕疵. 代码: <!DOCTYPE html><html><head> < ...
- JS实现一个简单的计算器
使用JS完成一个简单的计算器功能.实现2个输入框中输入整数后,点击第三个输入框能给出2个整数的加减乘除.效果如上: 第一步: 创建构建运算函数count(). 第二步: 获取两个输入框中的值和获取选择 ...
- JS+css滑动菜单简单实现
JS+css滑动菜单 制作一个简单的滑动菜单,当鼠标指向菜单标题时,滑出二级菜单.移开时二级菜单隐藏.目标很简单,实践时有一些细节需要注意,比如鼠标移向二级菜单的 过程中,二级菜单消失了.还有定位出错 ...
- vue—你必须知道的 js数据类型 前端学习 CSS 居中 事件委托和this 让js调试更简单—console AMD && CMD 模式识别课程笔记(一) web攻击 web安全之XSS JSONP && CORS css 定位 react小结
vue—你必须知道的 目录 更多总结 猛戳这里 属性与方法 语法 计算属性 特殊属性 vue 样式绑定 vue事件处理器 表单控件绑定 父子组件通信 过渡效果 vue经验总结 javascript ...
随机推荐
- 关于后台数据库正常存储中文通过Ajax方式传递到前台变成问号的处理
我的一个程序,用到的后台数据库MySql,字段是Varchar,Character Set是utf8,字段能且已经正确存储了中文. 从数据库取出信息后,在后台Java代码里Debug看到正确的中文. ...
- 判断input checkbox选中状态
$("#IsAdmin").is(':checked') 判断收否选中 返回true 或者false
- Android 数据库读取数据显示 [5]
2016-12-1 课程内容 昨天学了Android数据库升级.降级.创建 今天把数据库表里面的数据读取出来显示到手机屏幕上 下面代码是MainActivity.java 的代码 package co ...
- Visual studio code (vscode)
调东西 : 左上角 File -> Preferences -> Workspace Settings ( User Settings 也可以, 它是 for 所有的 project, W ...
- linux mount / umount 命令的基本用法
linux mount / umount 命令的基本用法 及 开机自动挂载 格式:mount [-参数] [设备名称] [挂载点] 其中常用的参数有: -a 安装在/etc/fstab文件中类出的所有 ...
- sql(SqlServer)编程基本语法
一.定义变量 --简单赋值 declare @a int set @a=5 print @a --使用select语句赋值 declare @user1 nvarchar(50) select @ ...
- 未能找到类型或命名空间名称“XXXX”(是否缺少 using 指令或程序集引用?) 转
未能找到类型或命名空间名称“XXXX”(是否缺少 using 指令或程序集引用?) 项目中 App_Code 文件夹中的类的命名空间,在添加的页面的 using XXXX 时,提示 未能找到类 ...
- HDU_1429——胜利大逃亡续,十位二进制状态压缩,状态判重
Problem Description Ignatius再次被魔王抓走了(搞不懂他咋这么讨魔王喜欢)……这次魔王汲取了上次的教训,把Ignatius关在一个n*m的地牢里,并在地牢的某些地方安装了带锁 ...
- HDU_2544——最短路,Dijkstra模版
Problem Description 在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt.但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要 ...
- c++ map 插入数据后,begin(),end()以及当前迭代器的变化
1. map.end()指向map的最后一个元素之后的地址,无论执行map.erase(iter)还是map.add(key, value),map.end()所返回的值永远不会发生变化,都是指向同一 ...