我喜欢使用Google Analytics以及我能够分割访客信息的方式。我们使用客户变量来跟踪用户与我们网站互动的人员和方式。为了实现Analytics的目标,我们一直在寻找改进和优化我们网站的方法。
目前,我们正处于开发阶段,可以选择如何存储和呈现产品信息。出现的问题之一是是否显示所有大写的产品信息。在过去的几年里,与我们的用户合作,我们的大部分流量似乎来自于有上限锁定的访客。因此,这让我们思考,我们是否可以用客户变量来跟踪我们的上限锁定用户,以便我们能够更明智地决定如何呈现信息?
看看我拼凑的这个样本:http://jsfiddle.net/shanabus/Za4kL/
我们的网站基本上代表了一个标准的电子商务网站。有几个不同的文本框,允许您搜索零件号,在整个订单过程中,用户可以在一些地方键入文本。你会将大写锁定测试绑定到所有文本框还是只绑定到普通文本框?如果我将按键侦听器绑定到网站上的所有文本框,是否会对性能造成影响,或者可以忽略不计?有没有更好的方法来实现这一点?
我想与其显示/隐藏div,不如设置自定义var:
_gaq.push('_setCustomVar', 5, 'capslock', 'true', 3);
感谢您对这个看似琐碎的话题的思考和思考。
我会全局绑定事件,并使用以下代码:
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;
}
});
这将创建一个变量CAPS_ON
,该变量可在整个页面中使用。
关于代码的进一步解释:
- 该事件必须绑定到
keypress
事件,因为它是唯一能区分小写/大写字符的关键事件 - 必须检查
shiftKey
属性,因为它会反转CAPS LOCK功能