计算器项目添加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 "); }
说明
- 修正语法错误后,原有计算器的按钮点击功能可正常运行,同时按下任意按键时会弹出你设置的提示框。
- 额外优化了两处细节:移除了无用的
document.getElementById("screen").value;语句,给document.getElementById("screen").value += displayer补充了分号,保证代码语法规范。
内容的提问来源于stack exchange,提问作者Techgorilla
相关产品推荐
相关产品推荐

