2017-08-11 104 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

相關問題