javascript - 简单的javascript击键计数

标签 javascript jquery count keystroke onkeydown

我正在开发一项在线研究/调查,我需要计算参与者的击键次数。我要求他们在文本字段中输入 lrlrlrlrlrlrl... 以模拟行走。事实证明,许多参与者(正如在任务上花费的时间所证明的那样)正在复制和粘贴。

我需要一些可以计算击键次数的东西,这样我就可以识别出按要求完成任务的参与者。这项研究是在 Coldfusion 中编程的,我在考虑某种 javascript/onkeydown/隐藏文件字段组合,但我不是真正的程序员。

如有任何帮助,我们将不胜感激。谢谢。

最佳答案

http://jsfiddle.net/kBJGM/

HTML:

<input type="text" class="nopaste"/>
<input type="text" id="countstroke"/>
<span id="count"></span>​

Javascript:

var strokeCount = 0;

$(function(){

    $(".nopaste").bind("copy paste", function(e){
        e.preventDefault();
    });

    $("#countstroke").keyup(function(){
        $("#count").text("Count: " + (++strokeCount));
    });
});​

如果您想更进一步,您可以强制只注册 L 和 R 键 (http://jsfiddle.net/kBJGM/5/):

$("#restrictivecount").keypress(function(e){
    var seq = rstrokeCount % 2;
    var allow = true;
    switch(e.keyCode){
        case 76:
        case 108: // L or l
            if (seq == 1) allow = false;
        break;
        case 82:
        case 114: // R or r
            if (seq == 0) allow = false;
        break;               
        default:
            allow = false;
        break;               
    }

    if (allow)
        $("#rcount").text("Count: " + (++rstrokeCount));
    else
        e.preventDefault();
});

关于javascript - 简单的javascript击键计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12111262/

相关文章:

mysql - 获取首次登录的每个日期的计数

php - 如何根据日期计算独立访问次数

javascript - 我用 Javascript 函数和验证编写了这个 HTML 代码..但是验证不起作用,我做错了什么

javascript - 我们如何根据 mongoDB 数据增加语义 UI 进度条?

javascript - 如何减少在用户向下滚动页面时加载下一组图像之前出现的空白量?

javascript - 如何在用户单击内部时自动展开 DIV 元素中的 IFrame?

javascript - Vue JS - 如何将颜色应用于数组中特定元素的文本,然后删除最后一个逗号

javascript - 正则表达式删除除字母和 '[单引号] 之外的任何内容

javascript - 通过自动化操作调用 Ember.js Controller 函数

linux - 如何使用 bash 在命令行上计算日期范围内的特定文件数?