让 Deepseek 写一个盘算器(网页)

[复制链接]
发表于 2025-10-14 15:56:23 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×


完备代码 
  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6.     <title>简单计算器</title>
  7.     <style>
  8.         body {
  9.             font-family: Arial, sans-serif;
  10.             display: flex;
  11.             justify-content: center;
  12.             align-items: center;
  13.             height: 100vh;
  14.             background-color: #f4f4f4;
  15.         }
  16.         .calculator {
  17.             background-color: #fff;
  18.             padding: 20px;
  19.             border-radius: 10px;
  20.             box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  21.         }
  22.         .calculator input[type="text"] {
  23.             width: 100%;
  24.             padding: 10px;
  25.             margin-bottom: 10px;
  26.             font-size: 18px;
  27.             text-align: right;
  28.             border: 1px solid #ccc;
  29.             border-radius: 5px;
  30.         }
  31.         .calculator .buttons {
  32.             display: grid;
  33.             grid-template-columns: repeat(4, 1fr);
  34.             gap: 10px;
  35.         }
  36.         .calculator .buttons button {
  37.             padding: 20px;
  38.             font-size: 18px;
  39.             border: none;
  40.             border-radius: 5px;
  41.             background-color: #f1f1f1;
  42.             cursor: pointer;
  43.         }
  44.         .calculator .buttons button:hover {
  45.             background-color: #ddd;
  46.         }
  47.         .calculator .buttons button.operator {
  48.             background-color: #ff9500;
  49.             color: white;
  50.         }
  51.         .calculator .buttons button.operator:hover {
  52.             background-color: #e08900;
  53.         }
  54.         .calculator .buttons button.equal {
  55.             background-color: #34c759;
  56.             color: white;
  57.             grid-column: span 2;
  58.         }
  59.         .calculator .buttons button.equal:hover {
  60.             background-color: #2da94f;
  61.         }
  62.     </style>
  63. </head>
  64. <body>
  65. <div class="calculator">
  66.     <input type="text" id="display" disabled>
  67.     <div class="buttons">
  68.         <button onclick="clearDisplay()">C</button>
  69.         <button onclick="appendToDisplay('/')" class="operator">/</button>
  70.         <button onclick="appendToDisplay('*')" class="operator">*</button>
  71.         <button onclick="deleteLast()">DEL</button>
  72.         <button onclick="appendToDisplay('7')">7</button>
  73.         <button onclick="appendToDisplay('8')">8</button>
  74.         <button onclick="appendToDisplay('9')">9</button>
  75.         <button onclick="appendToDisplay('-')" class="operator">-</button>
  76.         <button onclick="appendToDisplay('4')">4</button>
  77.         <button onclick="appendToDisplay('5')">5</button>
  78.         <button onclick="appendToDisplay('6')">6</button>
  79.         <button onclick="appendToDisplay('+')" class="operator">+</button>
  80.         <button onclick="appendToDisplay('1')">1</button>
  81.         <button onclick="appendToDisplay('2')">2</button>
  82.         <button onclick="appendToDisplay('3')">3</button>
  83.         <button onclick="calculate()" class="equal">=</button>
  84.         <button onclick="appendToDisplay('0')" style="grid-column: span 2;">0</button>
  85.         <button onclick="appendToDisplay('.')">.</button>
  86.     </div>
  87. </div>
  88. <script>
  89.     function appendToDisplay(value) {
  90.         document.getElementById('display').value += value;
  91.     }
  92.     function clearDisplay() {
  93.         document.getElementById('display').value = '';
  94.     }
  95.     function deleteLast() {
  96.         let display = document.getElementById('display');
  97.         display.value = display.value.slice(0, -1);
  98.     }
  99.     function calculate() {
  100.         let display = document.getElementById('display');
  101.         try {
  102.             // 使用 eval 计算表达式,支持运算符优先级
  103.             display.value = eval(display.value);
  104.         } catch (e) {
  105.             display.value = '错误';
  106.         }
  107.     }
  108. </script>
  109. </body>
  110. </html>
复制代码
在今世生存中,盘算器是我们一样平常工作和学习中不可或缺的工具。无论是举行简单的加减乘除运算,照旧处理处罚复杂的数学表达式,盘算器都能资助我们快速得到效果。本文将先容怎样利用HTML、CSS和JavaScript创建一个简单的网页盘算器,并表明着实现原理。
1. 项目布局

这个简单的盘算器项目紧张由三部分构成:

  •         HTML:用于构建盘算器的根本布局和布局。
  •         CSS:用于美化盘算器的外貌,使其更加用户友好。
  •         JavaScript:用于实现盘算器的逻辑功能,如输入、删除、清空和盘算等。
2. HTML布局

HTML部分界说了盘算器的根本布局。我们利用了一个<div>容器来包裹整个盘算器,并在此中放置了一个输入框和一个按钮网格。
  1. <div class="calculator">
  2.     <input type="text" id="display" disabled>
  3.     <div class="buttons">
  4.         <button onclick="clearDisplay()">C</button>
  5.         <button onclick="appendToDisplay('/')" class="operator">/</button>
  6.         <button onclick="appendToDisplay('*')" class="operator">*</button>
  7.         <button onclick="deleteLast()">DEL</button>
  8.         <button onclick="appendToDisplay('7')">7</button>
  9.         <button onclick="appendToDisplay('8')">8</button>
  10.         <button onclick="appendToDisplay('9')">9</button>
  11.         <button onclick="appendToDisplay('-')" class="operator">-</button>
  12.         <button onclick="appendToDisplay('4')">4</button>
  13.         <button onclick="appendToDisplay('5')">5</button>
  14.         <button onclick="appendToDisplay('6')">6</button>
  15.         <button onclick="appendToDisplay('+')" class="operator">+</button>
  16.         <button onclick="appendToDisplay('1')">1</button>
  17.         <button onclick="appendToDisplay('2')">2</button>
  18.         <button onclick="appendToDisplay('3')">3</button>
  19.         <button onclick="calculate()" class="equal">=</button>
  20.         <button onclick="appendToDisplay('0')" style="grid-column: span 2;">0</button>
  21.         <button onclick="appendToDisplay('.')">.</button>
  22.     </div>
  23. </div>
复制代码

  •         输入框:<input type="text" id="display" disabled>用于表现用户输入和盘算效果。disabled属性确保用户不能直接通过键盘输入。
  •         按钮:每个按钮都绑定了onclick事故,用于处理处罚用户的点击利用。按钮分为数字按钮、运算符按钮和功能按钮(如清空、删除、即是)。
3. CSS样式

CSS部分用于美化盘算器的外貌。我们利用了Flexbox布局来使盘算器在页面中居中表现,并利用Grid布局来分列按钮。
  1. body {
  2.     font-family: Arial, sans-serif;
  3.     display: flex;
  4.     justify-content: center;
  5.     align-items: center;
  6.     height: 100vh;
  7.     background-color: #f4f4f4;
  8. }
  9. .calculator {
  10.     background-color: #fff;
  11.     padding: 20px;
  12.     border-radius: 10px;
  13.     box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  14. }
  15. .calculator input[type="text"] {
  16.     width: 100%;
  17.     padding: 10px;
  18.     margin-bottom: 10px;
  19.     font-size: 18px;
  20.     text-align: right;
  21.     border: 1px solid #ccc;
  22.     border-radius: 5px;
  23. }
  24. .calculator .buttons {
  25.     display: grid;
  26.     grid-template-columns: repeat(4, 1fr);
  27.     gap: 10px;
  28. }
  29. .calculator .buttons button {
  30.     padding: 20px;
  31.     font-size: 18px;
  32.     border: none;
  33.     border-radius: 5px;
  34.     background-color: #f1f1f1;
  35.     cursor: pointer;
  36. }
  37. .calculator .buttons button:hover {
  38.     background-color: #ddd;
  39. }
  40. .calculator .buttons button.operator {
  41.     background-color: #ff9500;
  42.     color: white;
  43. }
  44. .calculator .buttons button.operator:hover {
  45.     background-color: #e08900;
  46. }
  47. .calculator .buttons button.equal {
  48.     background-color: #34c759;
  49.     color: white;
  50.     grid-column: span 2;
  51. }
  52. .calculator .buttons button.equal:hover {
  53.     background-color: #2da94f;
  54. }
复制代码

  •         居中表现:通过display: flex和justify-content: center、align-items: center,我们将盘算器居中表现在页面上。
  •         按钮布局:利用grid-template-columns: repeat(4, 1fr)将按钮分列成4列的网格布局。
  •         按钮样式:差别范例的按钮(如运算符、即是按钮)有差别的配景颜色和悬停效果,以进步用户体验
4. JavaScript逻辑

JavaScript部分负责处理处罚盘算器的逻辑功能。我们界说了四个函数来实现盘算器的根本利用:
  1. function appendToDisplay(value) {
  2.     document.getElementById('display').value += value;
  3. }
  4. function clearDisplay() {
  5.     document.getElementById('display').value = '';
  6. }
  7. function deleteLast() {
  8.     let display = document.getElementById('display');
  9.     display.value = display.value.slice(0, -1);
  10. }
  11. function calculate() {
  12.     let display = document.getElementById('display');
  13.     try {
  14.         // 使用 eval 计算表达式,支持运算符优先级
  15.         display.value = eval(display.value);
  16.     } catch (e) {
  17.         display.value = '错误';
  18.     }
  19. }
复制代码

  •         appendToDisplay(value):将用户点击的按钮值追加到输入框中。
  •         clearDisplay():清空输入框中的内容。
  •         deleteLast():删除输入框中的末了一个字符。
  •         calculate():利用eval()函数盘算输入框中的表达式,并将效果表现在输入框中。假如表达式无效,则表现“错误”。
5. 总结

通过这个简单的项目,我们学习了怎样利用HTML、CSS和JavaScript创建一个功能齐备的网页盘算器。这个盘算器不但支持根本的加减乘除运算,还具备清空、删除和错误处理处罚功能。固然这个盘算器相对简单,但它为我们提供了一个良好的出发点,可以在此底子上进一步扩展功能,如支持更复杂的数学运算、添加汗青记载等。
盼望这篇文章能资助你明白怎样构建一个简单的网页盘算器,并引发你对前端开辟的爱好!
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表