You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在JavaScript中设置按Shift键3次触发事件?

Shift键三连击触发事件的实现方案

我现在用以下代码实现了按一次Shift键就触发事件:

function Press(){
    document.querySelector("body").addEventListener("keyup", event => {
        if(event.key !== "Shift") return;
        document.getElementById("myElement").click();
        event.preventDefault();
    });
}

请问该如何修改代码,让它变成快速按下Shift键3次后,才执行document.getElementById("myElement").click()这个事件?

更新:
在@deceze的帮助下,我已经得到了可用的代码:

function Press(){
    document.addEventListener("keyup", event => {
        if(event.key !== "Shift") return;
        shift_pressed = typeof shift_pressed !== 'undefined' ?  shift_pressed : 0;
        shift_pressed++;
        setTimeout(() => {
            shift_pressed= shift_pressed-1 >= 0 ? shift_pressed-1 : 0;
        }, 1000);
        if (shift_pressed===3){
            document.getElementById("myElement").click();
            shift_pressed=0;
        }
        event.preventDefault();
    });
}

感谢大家的帮助!

内容的提问来源于stack exchange,提问作者Daria

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 01:12:03