如何在键盘上触发左箭头或右箭头键时运行代码

时间:2014-05-21 04:01:18

标签: javascript keyboard

如何在键盘上左或右箭头触发时在javascript中运行代码?

我是编程的新手。

有人可以指导我吗?

4 个答案:

答案 0 :(得分:2)

    function leftpress() {
        //do action
    }

    function rightpress() {
        //do action
    }

    document.onkeydown = function(evt) {
        evt = evt || window.event;
        switch (evt.keyCode) {
            case 39://left arrow
                leftpress();
                break;
            case 37://right arrow
                rightpress();
                break;
        }
    };

这是确切的代码,试试吧..

- 如果你需要帮助,你可以再问我一次。

答案 1 :(得分:1)

您需要附上event handler for tracking the key-board events

document.addEventListener("keydown", keyDownevent, false);

function keyDownevent(e) {
var keyCode = e.keyCode;
    if (e.keyCode === 37) {//right  
        // Your Code             
    }  
    else if (e.keyCode === 38) {//UP              
        // Your Code             
    }
    else if (e.keyCode === 39) {//left 
        // Your Code 
    }
    else if (e.keyCode === 40) {//DOWN 
       // Your Code 
    }     
}

Working Example

Jquery很简单:

试试这个:

$(document).keydown(function (e) {
        e.stopImmediatePropagation();        
        if (e.keyCode === 37) {//right  
             // Your Code             
        }  
        else if (e.keyCode === 38) {//UP              
            // Your Code             
        }
        else if (e.keyCode === 39) {//left 
            // Your Code 
        }
        else if (e.keyCode === 40) {//DOWN 
            // Your Code 
        }               
    });

答案 2 :(得分:0)

如果您是Javascript的新手,那么我可以建议您使用库来简化操作(因为您最终可能会修复很多跨浏览器问题):) jQuery是一个很好的,这里有一些键盘事件。 http://api.jquery.com/category/events/keyboard-events/

答案 3 :(得分:0)

首先你需要得到你按下的键的值,用jquery这样做:

$(‘#keyval’).keyup(function(e) {
    console.log(e.which)
});

然后你进行测试以查看这些密钥的值,然后检查密钥事件,检查它是否有值,然后执行操作,如下所示:

$(document).keypress(function(e) {
    if(e.which == //arrow value) {
        // your action
    }
});

我没有测试过,但必须有效。