当前位置:首页 > jquery

jquery计算器

2026-03-16 11:04:36jquery

jQuery 计算器实现方法

基础结构设计

使用HTML创建计算器的基本界面结构,包含显示区域和按钮。按钮分为数字、运算符和功能键(如清除、等于)。

jquery计算器

<div class="calculator">
  <input type="text" id="display" readonly>
  <div class="buttons">
    <button class="btn">7</button>
    <button class="btn">8</button>
    <button class="btn">9</button>
    <button class="btn operator">+</button>
    <!-- 更多按钮... -->
    <button class="btn clear">C</button>
    <button class="btn equals">=</button>
  </div>
</div>

样式设计

通过CSS为计算器添加基本样式,使其更具可视化和交互性。

jquery计算器

.calculator {
  width: 200px;
  margin: 0 auto;
}
#display {
  width: 100%;
  padding: 10px;
  font-size: 18px;
}
.buttons {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
.btn {
  padding: 10px;
  margin: 5px;
}

jQuery 逻辑实现

引入jQuery库并编写计算逻辑,处理按钮点击事件和运算。

$(document).ready(function() {
  let currentInput = '';
  let previousInput = '';
  let operation = null;

  $('.btn').click(function() {
    const value = $(this).text();

    if (!isNaN(value) || value === '.') {
      currentInput += value;
      $('#display').val(currentInput);
    } 
    else if (value === 'C') {
      currentInput = '';
      previousInput = '';
      operation = null;
      $('#display').val('');
    }
    else if ($(this).hasClass('operator')) {
      if (currentInput === '') return;
      if (previousInput !== '') calculate();
      operation = value;
      previousInput = currentInput;
      currentInput = '';
    }
    else if (value === '=') {
      if (currentInput === '' || previousInput === '') return;
      calculate();
      operation = null;
    }
  });

  function calculate() {
    let result;
    const prev = parseFloat(previousInput);
    const current = parseFloat(currentInput);

    switch (operation) {
      case '+': result = prev + current; break;
      case '-': result = prev - current; break;
      case '*': result = prev * current; break;
      case '/': result = prev / current; break;
      default: return;
    }

    currentInput = result.toString();
    previousInput = '';
    $('#display').val(currentInput);
  }
});

功能扩展

可以添加更多功能,如键盘支持、历史记录或科学计算功能。

$(document).keypress(function(e) {
  const key = String.fromCharCode(e.which);
  if (/[0-9.]/.test(key)) {
    $('.btn:contains(' + key + ')').click();
  } 
  else if (['+', '-', '*', '/'].includes(key)) {
    $('.operator:contains(' + key + ')').click();
  } 
  else if (key === '=' || key === '\r') {
    $('.equals').click();
  }
});

注意事项

  • 处理除以零的情况,避免计算错误
  • 限制输入长度,防止溢出
  • 对输入进行验证,确保数字格式正确
  • 考虑添加动画效果提升用户体验

通过以上步骤,可以构建一个功能完整的jQuery计算器。根据需求可以进一步优化界面或增加高级功能。

标签: 计算器jquery
分享给朋友:

相关文章

jquery下载

jquery下载

jQuery下载方法 官方下载渠道 访问jQuery官网(https://jquery.com/),点击页面中的“Download”按钮。提供两个版本选择: Production版本:压缩后的精…

jquery 菜鸟

jquery 菜鸟

以下是针对 jQuery 初学者的基础指南,涵盖核心概念和常用操作: jQuery 简介 jQuery 是一个快速、轻量级的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和…

jquery添加

jquery添加

jQuery 添加元素的方法 在jQuery中,添加元素到DOM有多种方式,可以根据需求选择合适的方法。 append() 将内容插入到选定元素的内部末尾处。 $("#container").ap…

jquery文件

jquery文件

jQuery文件获取与使用 jQuery是一个快速、简洁的JavaScript库,简化了HTML文档遍历、事件处理、动画和Ajax交互。以下是获取和使用jQuery文件的方法。 下载jQuery文件…

jquery鼠标

jquery鼠标

jQuery 鼠标事件处理 jQuery 提供了丰富的鼠标事件处理方法,可以方便地响应用户的鼠标操作。以下是常见的鼠标事件及其用法: 鼠标点击事件 click(): 鼠标单击时触发 dblclic…

jquery 特效

jquery 特效

jQuery 特效实现方法 jQuery 提供了丰富的特效方法,可以轻松实现动画、渐变、滑动等效果。以下是一些常见的 jQuery 特效实现方式: 淡入淡出效果 使用 fadeIn() 和 fade…