如何使用Google Analytics跟踪Caps Lock用户?

sha*_*bus 5 javascript jquery google-analytics

我喜欢使用Google Analytics以及我能够分割有关访问者信息的方式.我们使用客户变量来跟踪用户与我们网站的互动对象和信息.坚持分析的目标,我们一直在寻找改善和优化我们网站的方法.

目前,我们正处于开发阶段,我们可以选择如何存储和展示产品信息.提出的一个问题是是否以全部大写形式显示产品信息.过去几年与我们的用户合作,似乎我们的大部分流量都来自有大写锁定的访问者.所以它让我们思考,我们是否可以通过客户变量跟踪我们的大写锁定用户,以便我们可以更明智地确定如何呈现信息?

看看我拍的这个样本:http://jsfiddle.net/shanabus/Za4kL/

我们的网站基本上代表一个标准的电子商务网站.有几个不同的文本框,允许您搜索部件号,在整个订单处理过程中,有一些地方用户可以键入文本.你会将大写锁定测试绑定到所有文本框或只是常见的文本框吗?如果我将keypress监听器绑定到网站上的所有文本框或者它可以忽略不计,是否会影响性能?有没有更好的方法来实现这个?

我想象而不是显示/隐藏div而不是设置自定义var:

_gaq.push('_setCustomVar', 5, 'capslock', 'true', 3);
Run Code Online (Sandbox Code Playgroud)

感谢您对这个看似微不足道的话题的任何想法和考虑.

Rob*_*b W 4

我将全局绑定事件,并使用以下代码:

var CAPS_ON = null;
$(window).keypress(function(ev) {
    var charCode = ev.which; //jQuery normalizes ev.charCode to ev.which
    // Lowercase chars
    if (charCode >= 97 && charCode <= 122) {
        CAPS_ON = ev.shiftKey; // Caps are off if SHIFT is not pressed
    } else if (charCode >= 65 && charCode <= 90) {
        CAPS_ON = !ev.shiftKey;
    }
});
Run Code Online (Sandbox Code Playgroud)

这将创建一个CAPS_ON可以在整个页面中使用的变量。

代码的进一步解释:

  • 该事件必须绑定到该keypress事件,因为它是唯一识别小写/大写字符的关键事件。
  • shiftKey必须检查该属性,因为它会反转大写锁定功能。

  • 当然,这需要用户按键。但这是无法回避的。您可能希望将其与“$(window).one('keypress', …)”绑定,以避免每次按键的开销。 (2认同)