簡體   English   中英

使onKeyDown觸發HTML按鈕的onClick事件

[英]Make onKeyDown trigger an HTML button's onClick event

我有一個名為Calculator的基本HTML表單,其中包含一個名為“btnOne”的按鈕。 我想要的是當用戶按下鍵盤上的“1”鍵時,“btnOne”HTML按鈕的onClick事件發生。

為了嘗試實現這一點,我將此函數放在我的文檔的Head標記中:

<head>
     <SCRIPT LANGUAGE="JavaScript"> 

         //other functions...

        document.onkeydown = function(e){
            if (!e) e = window.event;
            if(e.keycode == '49') {
                document.Calculator.btnOne.click();
            }
            return false;
        }
      </SCRIPT>
</head>

我只是把這個片段放在錯誤的位置? 還有什么我需要做的才能使功能運行? 我真的是網絡開發的初學者,不知道我在做什么! 當然,一旦我弄明白如何讓這個按鈕工作,我將為所有其他按鈕添加if語句。

請查看http://api.jquery.com/category/events/,以便更輕松,更清晰地編寫本文。 你所擁有的基本上是正確的,盡管你最好將它包裝在一個文檔就緒事件中,以便事件 dom加載綁定。

使用jQuery,您的代碼看起來像這樣

jQuery(function() {
    jQuery(window).keypress(function(e){
         if (e.which === 49) {
               jQuery("#btnOne").click();
         }
    });
})

這是一個有效的JS小提琴,它將證明這一點

http://jsfiddle.net/HXYAD/

但是,將點擊事件處理程序抽象出參數化函數可能是一個好主意,這樣你就沒有了

 jQuery('#btnOne').click(function(){
     //some code
 });

 jQuery('#btnTwo').click(function(){
     //some similar code
 });     
 jQuery('#btnThree').click(function(){
     //some more similar code
 });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM