javascript - Javascript如何在单击按钮时跟踪事件
问题描述
我正在使用 java 脚本编写一个基于网络的计算器我已经创建了我的按钮并将它们链接到如果单击该特定按钮应该发生的事件例如如果按钮 3 是单击 3 将出现在屏幕上,如果添加符号是单击它会出现在屏幕上,所以我的问题是当用户点击等号按钮并在屏幕上显示结果(例如 3 + 3 = 6)时跟踪所有按钮单击并对它们执行数学运算。我现在的问题是确保用户输入应存储在我可以调用的函数中,即按下计算器上的等号符号,这是我的事件函数之一的示例,它与按钮一相关联
<button onclick="one()">1</button>
function one(){
var x = document.getElementById('screen')//Gets the value of html content
if (x.innerHTML == '0'){
x.innerHTML = 1
}
else{
var x = document.getElementById('screen').innerHTML += 1
}
if (x.length > 20){
var x = document.getElementById('screen').innerHTML = 'ERROR'
}
}
我有一个函数名称计算它与等号按钮相关我如何跟踪此函数中的数字和数学符号的按钮事件,以便当用户点击此按钮时结果应显示在屏幕上
function calculate(){
}
] 1
解决方案
您可以维护一个数组来跟踪您对计算器的所有点击
const buttonClicked = [];
<button onclick="buttonClicked(1)">1</button>
单击任何按钮后
function buttonClicked (key) {
buttonClicked.push(key);
}
内部计算函数尝试根据尝试执行您想要执行的任何操作从 buttonClicked 数组中读取值。
推荐阅读
- html - 如何将一张图片显示在另一张图片上作为背景?
- python - scipy.interpolate.splprep 函数中的系数是如何得出的
- javascript - 在 Google 表格中,如何使用 GAS 将日期格式为“MMMM”(仅月份名称)的单元格格式化为大写?
- python - 在 python 中读取 Pandas 数据框中的浮点数时出现问题
- postgresql - 带有本地执行程序和 postgress 的 Airflow 2.0 调度程序失败
- haskell - 使用自动映射将 IO 异常提升到 MonadError
- amazon-ec2 - Terraform EC2 NIC private_ips 来自自定义模块输出的构建列表
- marklogic - java.lang.NoSuchFieldError: 实例 - MarkLogic
- javascript - JavaScript:基于数组中的唯一级别的多维数组的唯一 ID
- apache-spark - 如何将数据框的几列转换为元组