2017-08-11 46 views
-2

我对Javascript很新,基本上我想在键盘上的按键功能键上调用一个简单的javascript事件。下面的代码提供了点击按钮的当前日期和时间,类似地,我们可以在功能键的按键上调用javascript事件吗?如何在键盘上的功能键的按键上调用javascript事件?

<input type = "text" onkeypress="document.getElementById('demo').innerHTML=Date()">The time is? 
 

 
<p id="demo"></p>

+1

你加一个按键事件处理程序,并看到了什么? – epascarello

+1

看到这个答案:https://stackoverflow.com/questions/1846599/how-to-find-out-what-c​​haracter-key-is-pressed –

+4

可能重复的[如何找出什么字符键被按下?] (https://stackoverflow.com/questions/1846599/how-to-find-out-what-c​​haracter-key-is-pressed) – tima

回答

0

这很简单,有一个onkeypress事件:

<button onkeypress="document.getElementById('demo').innerHTML=Date()">The time is?</button> 
 

 
<p id="demo"></p>

我觉得这不需要解释。

0

您只需要使用事件监听器,然后通过密钥代码对其进行过滤。

document.addEventListener("keydown", function(event) { 
 
    event.preventDefault(); 
 
    switch (event.which) { 
 
    case 112: 
 
     setMessage("You just pressed F1!"); 
 
     break; 
 
    case 113: 
 
     setMessage("You just pressed F2!"); 
 
     break; 
 
    case 114: 
 
     setMessage("You just pressed F3!"); 
 
     break; 
 
    case 115: 
 
     setMessage("You just pressed F4!"); 
 
     break; 
 
    case 116: 
 
     setMessage("You just pressed F5!"); 
 
     break; 
 
    case 117: 
 
     setMessage("You just pressed F6!"); 
 
     break; 
 
    case 118: 
 
     setMessage("You just pressed F7!"); 
 
     break; 
 
    case 119: 
 
     setMessage("You just pressed F8!"); 
 
     break; 
 
    case 120: 
 
     setMessage("You just pressed F9!"); 
 
     break; 
 
    case 121: 
 
     setMessage("You just pressed F10!"); 
 
     break; 
 
    case 122: 
 
     setMessage("You just pressed F11!"); 
 
     break; 
 
    case 123: 
 
     setMessage("You just pressed F12!"); 
 
     break; 
 
    } 
 
}) 
 

 
function setMessage(msg) { 
 
    document.querySelector('.demo').innerHTML = msg; 
 
}
<div class="demo">Press a function button</div>

+0

感谢您的答复,但代码仍然无法正常工作的功能键。当我按下任何功能键时,该事件不可达。 – coder12345

相关问题