我正在开发一个在线计算器,我希望同时包含click
事件,用户可以点击某个按钮,以及keyboard
事件,他可以在其中键入数字文字输入。
我已使用click
块完成了switch
事件,其中大小写是每个按钮的ID。我想知道是否有任何方法可以在click事件中包含keyboard
事件而无需编写全新的代码块?
答案 0 :(得分:0)
Hier是键盘的if条件:
document.addEventListener('keydown', function keyDownFunc (event){ // keyboard shortcuts for using calculator
var isShift = window.event.shiftKey ? true : false; // checks status of shift key
if (event.keyCode == 48 || event.keyCode == 96){ /*Call Your Calc function hier*/ } // 0
if (event.keyCode == 49 || event.keyCode == 97){ /*Call Your Calc function hier*/ } //1
if (event.keyCode == 50 || event.keyCode == 98){ /*Call Your Calc function hier*/ } //2
if (event.keyCode == 51 || event.keyCode == 99){ /*Call Your Calc function hier*/ } //3
if (event.keyCode == 52 || event.keyCode == 100){ /*Call Your Calc function hier*/ } //4
if (event.keyCode == 53 || event.keyCode == 101){ /*Call Your Calc function hier*/ } //5
if (event.keyCode == 54 || event.keyCode == 102){ /*Call Your Calc function hier*/ } //6
if (event.keyCode == 55 || event.keyCode == 103){ /*Call Your Calc function hier*/ } //7
if ((isShift == false && event.keyCode == 56) || event.keyCode == 104){ /*Call Your Calc function hier*/ } //8
if (event.keyCode == 57 || event.keyCode == 105){ /*Call Your Calc function hier*/ } //9
if ((isShift == true && event.keyCode == 56) || event.keyCode == 106){ /*Call Your Calc function hier*/ } //multiply
if ((isShift == true && event.keyCode == 187) || event.keyCode == 107){ /*Call Your Calc function hier*/ }//add
if (event.keyCode == 189 || event.keyCode == 109){ /*Call Your Calc function hier*/ } //subtract
if (event.keyCode == 190 || event.keyCode == 108){ /*Call Your Calc function hier*/ } //decimal
if (event.keyCode == 191 || event.keyCode == 111){ /*Call Your Calc function hier*/ } //divide
if (event.keyCode == 220 || event.keyCode == 46 || event.keyCode == 12){ /*Call Your Calc function hier*/ } // delete key
if ((isShift == false && event.keyCode == 187) || event.keyCode == 13){ /*Call Your Calc function hier*/ } //doMath
}, true);