效果图:

电脑端:

手机端:

源码:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>仿华为计算器</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<style type="text/css">
*{
margin: 0;
padding: 0;
}
html,body{
overflow: hidden;
}
.calculator{
width: 300px;
margin: 10px auto;
border: 1px solid #E4E4E4;
}
.calc-screen p{
background-color: #fff;
height: 60px;
line-height: 60px;
text-align: right;
padding: 0px 10px;
overflow-x: hidden;
}
.calc-in{
font-size: 20px;
font-weight: bold;
}
.calc-out{
color: darkgray;
}
table{
border-collapse: collapse;
}
.calc-btn td{
width: 75px;
height: 60px;
line-height: 60px;
text-align: center;
background-color: #ffffff;
border: 1px solid #E4E4E4;
margin-left: -1px;
margin-right: -1px;
font-size: 20px;
cursor: pointer;
}
.calc-btn td:hover{
background-color: #EAEAEA;
}
.del{
background: url("del.jpg") no-repeat 25px;
}
.calc-btn .bc{
background-color: #F5F5F5;
}
.calc-btn td.eq:hover{
background-color: #019DB1
}
.fcg{
color: #00ACC2;
}
</style>
</head>
<body>
<div class="calculator" id="calculator">
<form action="" name="calculator" method="get">
<div class="calc-screen">
<!-- 输入的数据 -->
<p class="calc-in" id="calc-in"></p>
<!-- 输出的运算结果 -->
<p class="calc-out" id="calc-out"></p>
</div>
<div class="calc-btn" id="calc-btn">
<table>
<tr>
<td class="bc">mc</td>
<td class="bc">m+</td>
<td class="bc">m-</td>
<td class="bc">mr</td>
</tr>
<tr>
<td class="fcg bc" onclick="clearScreen()">c</td>
<td class="fcg bc" onclick="command('÷')">÷</td>
<td class="fcg bc" onclick="command('×')">×</td>
<td class="del bc" onclick="del()"></td>
</tr>
<tr>
<td onclick="command(7)">7</td>
<td onclick="command(8)">8</td>
<td onclick="command(9)">9</td>
<td class="fcg bc" onclick="command('-')">-</td>
</tr>
<tr>
<td onclick="command(4)">4</td>
<td onclick="command(5)">5</td>
<td onclick="command(6)">6</td>
<td class="fcg bc" onclick="command('+')">+</td>
</tr>
<tr>
<td onclick="command(1)">1</td>
<td onclick="command(2)">2</td>
<td onclick="command(3)">3</td>
<td rowspan="2" style="color: #fff;background-color: #00ACC2" class="eq" onclick="calc()">=</td>
</tr>
<tr>
<td onclick="command('%')">%</td>
<td onclick="command(0)">0</td>
<td onclick="command('.')">.</td>
</tr>
</table>
</div>
</form>
</div> <script>
//兼容屏幕
screenW = window.screen.width;//屏幕分辨率
screenH = window.screen.height;//屏幕分辨率
var calculator = document.getElementById("calculator");
var calc_btn = document.getElementById("calc-btn").getElementsByTagName("td");
console.log(document.body.clientWidth)
if(document.body.clientWidth<600){
calculator.style.width = screenW+"px";
calculator.style.height = screenH+"px";
calculator.style.border = "none";
calculator.style.margin = "0";
for(var i = 0;i<calc_btn.length;i++){
calc_btn[i].style.width = screenW/4+"px";
calc_btn[i].style.height = (screenH-120)/6 + "px";
}
} var calcIn = document.getElementById("calc-in");
var calcOut = document.getElementById("calc-out"); //输入数据函数
function command(str) {
calcIn.innerHTML = "" ? calcIn.innerHTML = str : calcIn.innerHTML =calcIn.innerHTML+str;
}
//计算数据函数
function calc() {
calcOut.innerHTML = eval(calcIn.innerHTML.replace(/×/g,"*").replace(/÷/g,"/").replace(/%/,"/100"));
if(calcOut.innerHTML == "undefined"){
calcOut.innerHTML = "";
}
}
//清屏函数
function clearScreen() {
calcIn.innerHTML = "";
calcOut.innerHTML = "";
}
//每次删除一位数据的函数
function del() {
calcIn.innerHTML = calcIn.innerHTML.substr(0,calcIn.innerHTML.length-1);
} </script>
</body>
</html>

小图标:

js实现仿华为手机计算器,兼容电脑和手机屏幕的更多相关文章

  1. 通过JS语句判断WEB网站的访问端是电脑还是手机

    通过JS语句判断WEB网站的访问端是电脑还是手机,以显示不同的页面! 目录腾讯网的适配代码如何判断访问网站的机器类型-如何判断ipadJS 判断浏览器客户端类型(ipad,iphone,android ...

  2. JS判断web网站访问端是PC电脑还是手机

    通过JS语句判断WEB网站的访问端是电脑还是手机,以显示不同的页面! <script type="text/javascript"> <!-- //平台.设备和操 ...

  3. [转]仿91助手的PC与android手机通讯

    仿91助手的PC与android手机通讯 原文 知道91助手和豌豆莢吧? 说到这两个东西,最让人好奇的应该是就是和手机的交互了.我之前有研究过电脑和安卓的交互,基本功能已经走通了,在这里我想分享一下. ...

  4. JS判断手机访问页面,根据手机访问或者PC访问跳转

    当用户访问你网站时,如果是PC端访问,则不作处理,如果是手机或者平板访问,就跳转到自己定义的手机页面去,这个在做webapp的时候经常用到,把代码分享给大家,希望对大家有所帮助. 首先,你要在页面中引 ...

  5. 吴裕雄 Bootstrap 前端框架开发——Bootstrap 网格系统实例:手机、平板电脑、台式电脑

    <!DOCTYPE html> <html> <head> <title>Bootstrap 实例 - 手机.平板电脑.台式电脑</title&g ...

  6. js中getBoundingClientRect的作用及兼容方案

    js中getBoundingClientRect的作用及兼容方案 1.getBoundingClientRect的作用 getBoundingClientRect用于获取某个html元素相对于视窗的位 ...

  7. PHP判断访问终端,电脑或手机访问

    函数代码: //判断电脑或手机访问 function is_mobile(){ $user_agent = $_SERVER['HTTP_USER_AGENT']; $mobile_agents = ...

  8. JS实现一个简单的计算器

    使用JS完成一个简单的计算器功能.实现2个输入框中输入整数后,点击第三个输入框能给出2个整数的加减乘除.效果如上: 第一步: 创建构建运算函数count(). 第二步: 获取两个输入框中的值和获取选择 ...

  9. js本地图片预览代码兼容所有浏览器

    html代码 <div id="divPreview" style="width: 160px; height: 170px"><img id ...

随机推荐

  1. 使用Java实现网络爬虫

    网络爬虫 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本. 另外一些不常使用的名字还有蚂蚁.自动索引.模 ...

  2. Nginx中间件使用心得(二)

    一.基础知识补充 1. 历史由来补充: Nginx是俄罗斯第二大网站的开源项目. 淘宝团队发行了 tengine 增加了很多第三方的包. 2.下载相关的主键 (1)nginx下载地址          ...

  3. scala单元测试,包括功能测试和性能测试

    十分简单的scala单元测试 在编写性能要求高的模块的时候,单元测试是有必要的,通过搜索,我找到了一套提供单元功能测试和性能测试的可行方案,该方案简单好用,推荐给大家. 测试工具 首先找到适用于sca ...

  4. Flex box 弹性盒子布局

    display: -webkit-flex 标识使用弹性布局 flex: num  占容器的比例   Flex等比划分 导航1 : Flex :1;  导航2  Flex: 2;     ————&g ...

  5. storyBoard中取消键盘第一响应

    -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {     [self.view endEditing:YES]; } ...

  6. MVC, EF, Code First 相关问题总结

    1. 控制表名单复数: 在DbContext类中修改OnModelCreating()为: protected override void OnModelCreating(DbModelBuilder ...

  7. tar、7z(7zip)压缩/解压缩指令的使用

    本文介绍tar.7z指令的使用方法 tar指令 在Linux中,使用的最多的压缩/解压缩指令就是tar指令了. tar指令用来将多个文件/目录结构打包.在实际使用中,往往使用tar对压缩的支持,即同时 ...

  8. DIN-A4 doublesided year calendar

    % DIN-A4 doublesided year calendar % Author: Robert Krause % License : Creative Commons attribution ...

  9. sklearn使用小记GridSearchCV

    def test_grid_search(): from sklearn import datasets,svm iris = datasets.load_iris() parameters = {' ...

  10. MongoDB与SqlSugar与Ado.Net对比

    SqlSugar NET 4.+ & .NET CORE 高性能 轻量级 ORM框架,众多.NET框架中最容易使用的数据库访问技术 MongoDB与MySql的安装省略...虽然遇到了一些意外 ...