要实现一个简单的网页计算器,你需要掌握JavaScript中的DOM操作、事件监听以及基本的数学运算。下面是一个简单的示例,展示了如何使用HTML、CSS和JavaScript来创建一个基本的计算器。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>简单网页计算器</title>
<style>
/* 简单的样式 */
.calculator {
width: 200px;
margin: auto;
border: 1px solid #ccc;
padding: 20px;
box-shadow: 0 0 10px #ccc;
}
.button {
width: 45px;
height: 45px;
margin: 5px;
font-size: 18px;
}
input[type="text"] {
width: 100%;
margin-bottom: 10px;
text-align: right;
padding: 5px;
}
</style>
</head>
<body>
<div class="calculator">
<input type="text" id="display" disabled>
<div>
<button class="button" onclick="clearDisplay()">C</button>
<button class="button" onclick="appendToDisplay('/')">/</button>
<button class="button" onclick="appendToDisplay('*')">*</button>
<button class="button" onclick="appendToDisplay('-')">-</button>
</div>
<div>
<button class="button" onclick="appendToDisplay('7')">7</button>
<button class="button" onclick="appendToDisplay('8')">8</button>
<button class="button" onclick="appendToDisplay('9')">9</button>
<button class="button" onclick="appendToDisplay('+')">+</button>
</div>
<div>
<button class="button" onclick="appendToDisplay('4')">4</button>
<button class="button" onclick="appendToDisplay('5')">5</button>
<button class="button" onclick="appendToDisplay('6')">6</button>
</div>
<div>
<button class="button" onclick="appendToDisplay('1')">1</button>
<button class="button" onclick="appendToDisplay('2')">2</button>
<button class="button" onclick="appendToDisplay('3')">3</button>
</div>
<div>
<button class="button" onclick="appendToDisplay('0')">0</button>
<button class="button" onclick="calculateResult()">=</button>
</div>
</div>
<script src="calculator.js"></script>
</body>
</html>
function appendToDisplay(value) {
document.getElementById('display').value += value;
}
function clearDisplay() {
document.getElementById('display').value = '';
}
function calculateResult() {
try {
const result = eval(document.getElementById('display').value);
document.getElementById('display').value = result;
} catch (e) {
document.getElementById('display').value = 'Error';
}
}
onclick
属性,可以为按钮添加点击事件的处理函数。eval
函数可能存在安全风险,因为它会执行传入的字符串作为代码。解决方法是使用更安全的替代方案,例如编写自己的解析器或使用第三方库来处理数学表达式。eval
会抛出异常。通过try...catch
语句可以捕获这些异常,并显示错误信息。eval
,可以考虑使用Function
构造函数或者其他安全的数学表达式解析库。这个示例提供了一个基本的框架,你可以根据需要进一步扩展和完善功能。
领取专属 10元无门槛券
手把手带您无忧上云