首次按下后禁用输入键盘3秒钟,然后重新启用输入键盘

时间:2016-11-03 20:58:48

标签: javascript jquery html

这是我的代码,但我在如何解决它方面遇到了挑战。我想在第一次按下后禁用输入键盘三秒钟,然后再次重新启用它。这是我的尝试

    function disableForThreeSeconds(e) {
    if (e.keyCode == 13) {
        //if pressed for the first disable for three seconds
        }
    }
}

请帮助!

3 个答案:

答案 0 :(得分:1)

if if block:

e.target.disabled = true;   
window.setTimeout(function(){
    e.target.disabled = false;
},3000);

答案 1 :(得分:0)

您可以使用setTimeout。查看文档here

API: number setTimeout(function callback, integer milliseconds )

简单的jQuery示例:

setTimeout(function(){
    $(window).keypress(function(e){
        if (e.keyCode == 13) {
            return false;
        }
    })
}, 3000);

答案 2 :(得分:0)

您可以忽略处理程序中的事件而不是禁用键盘......

var isDisabled;

function disableForThreeSeconds(e) {
    if (e.keyCode == 13) {
        if (!isDisabled) {
            isDisabled = new Date();
        } else {
        //if pressed for the first disable for three seconds
            if (new Date() - isDisabled > 3 * 1000 )
                isDisabled = 0;
        }
    }
}