You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

计算器项目添加keypress事件监听后失效,求解决方法

解决计算器键盘输入提示功能的报错问题

你的代码无法运行的核心原因是键盘事件绑定存在语法错误:document.addEventListener("keypress" nextAction);这一行缺少了参数分隔的逗号,导致JS解析失败,进而阻断了整个脚本的执行。

修正后的完整代码

const a = document.querySelectorAll(".drum");
var y = a.length;
for (var count = 0; count < y; count++) {
  var z = a[count];
  z.addEventListener("click", Action);
}

function Action(p) {
  var displayer = p.target.value;
  var msg = document.getElementById("screen").value;
  if (displayer === "AC") {
    document.getElementById("screen").value = "";
  } else if (displayer === "=") {
    document.getElementById("screen").value = eval(msg);
  } else {
    document.getElementById("screen").value += displayer;
  }
}

// 修正语法错误的键盘事件绑定
document.addEventListener("keypress", nextAction);

function nextAction() {
  alert("use a button please ");
}

说明

  1. 修正语法错误后,原有计算器的按钮点击功能可正常运行,同时按下任意按键时会弹出你设置的提示框。
  2. 额外优化了两处细节:移除了无用的document.getElementById("screen").value;语句,给document.getElementById("screen").value += displayer补充了分号,保证代码语法规范。

内容的提问来源于stack exchange,提问作者Techgorilla

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 09:12:46