📅  最后修改于: 2023-12-03 14:49:48.812000             🧑  作者: Mango
如果您是一个前端开发人员,您可能会知道如何使用jQuery来简化代码并使其更易于管理。这篇文章将教你如何使用jQuery设计和实现一个计算器。
首先,我们需要设置我们的HTML代码。这是一个基本的HTML代码,其中包含了我们需要的按钮和一个输入框:
<!DOCTYPE html>
<html>
<head>
<title>jQuery Calculator</title>
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
</head>
<body>
<div id="calculator">
<input type="text" id="result" value="0" readonly>
<button id="btnClear">C</button>
<button id="btnBack">←</button>
<button id="btnDivide">/</button>
<button id="btn7">7</button>
<button id="btn8">8</button>
<button id="btn9">9</button>
<button id="btnMultiply">*</button>
<button id="btn4">4</button>
<button id="btn5">5</button>
<button id="btn6">6</button>
<button id="btnSubtract">-</button>
<button id="btn1">1</button>
<button id="btn2">2</button>
<button id="btn3">3</button>
<button id="btnAdd">+</button>
<button id="btnChangeSign">±</button>
<button id="btn0">0</button>
<button id="btnDecimal">.</button>
<button id="btnEquals">=</button>
</div>
</body>
</html>
这是我们的CSS样式,用于设置按钮和输入框的样式和布局:
<style>
#calculator {
width: 200px;
padding: 10px;
border: 1px solid black;
}
#calculator input {
width: 100%;
margin: 5px 0;
padding: 5px;
font-size: 1.2em;
text-align: right;
}
#calculator button {
width: 25%;
margin: 5px;
padding: 5px;
font-size: 1.2em;
background-color: #eee;
border: none;
border-radius: 5px;
cursor: pointer;
}
</style>
最后,这是我们的jQuery代码。它处理了点击每个按钮时要执行的操作。请注意,我们使用了eval()函数来计算结果。这是一个不安全的函数,我们必须确保用户不能注入任何恶意代码。在这种情况下,我们通过使用正则表达式来验证用户输入:
<script>
$(document).ready(function() {
// Clear the input field
$('#btnClear').click(function() {
$('#result').val('0');
});
// Delete the last character from the input field
$('#btnBack').click(function() {
var value = $('#result').val();
$('#result').val(value.substring(0, value.length-1));
});
// Append the selected button value to the input field
$('button:not(#btnEquals)').click(function() {
var value = $('#result').val();
var appendValue = $(this).text();
if(value == '0') {
$('#result').val(appendValue);
} else {
$('#result').val(value + appendValue);
}
});
// Calculate the result
$('#btnEquals').click(function() {
var value = $('#result').val();
// Regular expression to check for valid input
var regex = /^(\d+(\.\d+)?((\/|\*|\-|\+|\%)(\d+(\.\d+)?))*)+$/;
if(regex.test(value)) {
$('#result').val(eval(value));
} else {
alert('Invalid input!');
}
});
// Change the sign of the input field value
$('#btnChangeSign').click(function() {
var value = $('#result').val();
if(value.charAt(0) == '-') {
$('#result').val(value.substring(1));
} else {
$('#result').val('-' + value);
}
});
// Append a decimal point to the input field value
$('#btnDecimal').click(function() {
var value = $('#result').val();
if(value.indexOf('.') == -1) {
$('#result').val(value + '.');
}
});
});
</script>
现在你已经了解了如何使用jQuery来设计和实现计算器。你的计算器可以随意定制,根据你的需要添加/修改功能。