【问题标题】:keypress arrows down not working [duplicate]向下的按键箭头不起作用[重复]
【发布时间】:2016-01-04 08:27:33
【问题描述】:

按键向下箭头事件不起作用,颜色没有变为红色,控制台没有错误,我做错了什么?

 var getText = document.getElementsByTagName('h1')[0];

            getText.onclick = function() {
                    getText.innerHTML = "Simple";
            }

              function keyPress() {
                if(event.which == 13) { 
                    getText.style.color = 'blue';
                }

                if(event.which == 40) {
                    getText.style.color = 'red';
                }
            }

【问题讨论】:

  • 您的代码缺少某些部分...event 变量在哪里设置?我也没有看到你在听按键事件。
  • 另外,箭头键通常不会触发按键事件...但是一旦我看到你的真实案例,我会提供更多关于这一切的细节。

标签: javascript


【解决方案1】:

正如@Salketer 所说,您需要一个事件侦听器来观察键盘事件。在这种情况下,keyPress 函数可以用作事件处理程序。 (但event必须设置为函数定义中的第一个参数。)

var getText = document.getElementsByTagName( 'h1' )[0];

function keyPress( event ) {
    if(event.which == 13) { 
        getText.style.color = 'blue';
    }

    if(event.which == 40) {
        getText.style.color = 'red';
    }
}

/* Setup an event listener and use keyPress as event handler */
window.addEventListener( 'keydown', keyPress, false );

见:https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-25
    • 2016-06-17
    • 2014-08-10
    相关资源
    最近更新 更多