带有setTimeout的双键陷阱ctrl

时间:2015-02-05 19:29:05

标签: javascript jquery html

我正在尝试构建一个代码:

  • 当用户双击ctrl按钮时,
  • 对象的css属性更改

我的代码如下:

$(document).keydown(function(){
    setTimeout(function(e){
        var count_keypress = 0;
        if (e.keyCode == 17) {
            count_keypress +1;
        }
        if (count_keypress == 2) {
            $("#iframe_add_update").css(
        "display" , "inline"
          );
        }
    },1000);
});

1 个答案:

答案 0 :(得分:3)

尝试:

var tapStarted = false;
$(document).keydown(function() {
    if (e.keyCode == 17) {
        if (!tapStarted) {
            tapStarted = true;
            setTimeout(function() {
               tapStarted = false; 
            }, 1000);
        } else {
            /* DO STUFF! */
            tapStarted = false;
        }
    }
});

这里的想法是第一次按下ctrl,记住按下但是启动计时器会在1000ms后忘记第一次按下(你可以将值改为任何明显的值--1000ms可能太长)。 / p>

用户必须在计时器否定第一次按下之前第二次按ctrl。