How to add onkeydown to body?

后端 未结 3 1356
离开以前
离开以前 2021-01-18 07:08

In my index.html I have this code. I would need to add onkeydown event to that body in Main.onLoad().

Any idea how to do it?



        
相关标签:
3条回答
  • 2021-01-18 07:21

    You can attach listeners like this: you can pass a function or simply invoke an anonymous one in code.

    document.body.addEventListener('keydown',Main.onLoad);
    

    Seems to work on stack overflow when passed to console.

    0 讨论(0)
  • 2021-01-18 07:22

    Usually onkeydown can be attached to the elements which can receive focus. In some browsers you can gain focus to the document.body, but you can't rely on that. window is one of those elements which can gain the focus.

    You can try to put the code below to the head section of your HTML code, after TVA is defined.

    window.onkeydown = TVA.keyDown;
    

    Or when using addEventListener():

    window.addEventListener('keydown', TVA.keyDown, false);
    
    0 讨论(0)
  • 2021-01-18 07:37

    In a Javascript block, try to use window.onkeydown (MDN).

    You can also use document.onkeydown and document.body.onkeydown.

    Here is an example for you:

    JavaScript

    document.body.onkeydown = function(e){
        alert(String.fromCharCode(e.keyCode)+" --> "+e.keyCode);
    };
    

    Live Demo

    The code above can be put in any valid JavaScript block (such as Main.onLoad() function).

    0 讨论(0)
提交回复
热议问题