У меня есть программное обеспечение, которое фиксирует время для каждого нажатия клавиши. Я использую события keyup
и keydown
, чтобы получить как время нарастания, так и время простоя. Эти события имеют параметр timeStamp
, который should be миллисекунд относительно эпохи. В Firefox это миллисекунды, но это слишком мало, чтобы быть с эпохи. Это работает корректно для меня в Chrome и Safari.События в клавиатуре Firefox имеют неправильные значения времениStamp
Вот фрагмент кода, я использую:
function keyDownHandler(event) {
var key = event.which,
when = event.timeStamp;
...
}
function keyUpHandler(event) {
var key = event.which,
when = event.timeStamp;
...
}
$(element).keydown(keyDownHandler);
$(element).keyup(keyUpHandler);
Я пропускаю что-то здесь? Простым способом воспроизведения является просмотр страницы JQuery для keyup и введите их демоверсию. С Chrome и Safari возвращаемое значение timeStamp равно 1446582863442, но в Firefox это 2444770694.
Это действительно действительно сложно. Спасибо за ответ. – Pete
Будущие версии DOM могут изменить это на [указать эпоху unix] (https://dom.spec.whatwg.org/#dom-event-timestamp). Но на данный момент было бы лучше использовать метод getTime() 'для объекта Date. – szupie