如何存储鼠标和键盘事件和值

时间:2016-03-22 14:08:18

标签: javascript arrays object events storing-data

我想记录用户在网页中所做的一切(点击,双击,按键,滚动等)。我也想记录事件发生的时间。

存储所有这些信息的最佳方式是什么。 Json,数组,对象还是字符串?

到目前为止,我将所有内容存储在一个字符串中: c|15:33:22-dc|15:32:14 c =点击 dc =双击

我需要确保信息易于提取。

2 个答案:

答案 0 :(得分:0)

您想在哪里存储这些数据?

对于工作/收集此事件,我建议你使用带有数组的对象。像这样:

var eventsLog = {"mouse":[],"keyboard":[]};

当事件被触发时,您只需将其推入阵列即可。很舒服。

var insert = [new Date(), 'event_name'];
(eventsLog.mouse).push(insert);

当您想将数据传输到另一个应用时,您只需将数据转换为所需的格式。

答案 1 :(得分:0)

文档对象模型中的每个事件都包含在一个事件对象中。 https://developer.mozilla.org/en-US/docs/Web/API/Event/Event

如果我创建了一个onclick事件,那么该函数的一个参数就是事件。您可以记录这些事件对象。

的jQuery

var myEventList= [],
$('#myID').on('click', function(event) {
   myEventList.push(event);
});

的JavaScript

var myEventList=[];
document.getElementById('myID').onclick = function(event) {
   myEventList.push(event)
};