2017-09-23 29 views
0

使用jQuery可以觸發快捷鍵嗎?例如:執行Shift鍵+空格鍵。如何使用jQuery觸發快捷方式點擊

$("body").on("click", function(){ 
    var e = jQuery.Event("keydown"); 
    e.shiftKey = true; 
    e.which = 32; 
    $("body").trigger(e); 
}); 
+0

嘗試引用這樣一句:https://stackoverflow.com/questions/3834175/jquery-key-code-for-command-key/3834210希望這有助於:) – emjr

回答

0

是的,你可以綁定到​​事件,並在適當的組合被發現,你可能會引發對DOM所需的事件。

在下面的代碼片段, + 空間觸發按鈕的點擊。

$("body").on("keydown", function(e){ 
 
    if(e.shiftKey && e.which == 32) { 
 
    $("#button").click(); 
 
    } 
 
}); 
 

 
function doSomething() { 
 
    alert("Button was clicked"); 
 
} 
 

 
function triggerShiftSpace() { 
 
    var event = $.Event("keydown"); 
 
    event.shiftKey = true; 
 
    event.which = 32; 
 
    $("body").trigger(event); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<button id="button" onclick="doSomething()"> 
 
    Don't click me! 
 
</button> 
 

 
<button id="button" onclick="triggerShiftSpace()"> 
 
    Shift + Space 
 
</button>

+0

在按鈕點擊觸發Shift + Space的情況下,可以做到這一點。 –

+0

@yerrp是的,我已經更新了答案,以顯示如何做到這一點。查看'setTimeout'中的部分。 – Nisarg

+0

我打算鍵入「反向」,因爲在點擊按鈕觸發Shift +空格 –