Почему event.timeStamp 0 в Firefox?
var input = document.createElement("input");
input.onclick = function (ev) {
console.log(ev.timeStamp === 0 ? "WHY IS IT ZERO" : "It's not broken");
};
input.click()
var ev = document.createEvent("Event");
console.log(ev.timeStamp === 0 ? "THIS IS MADNESS" : "At least this works");
В Firefox первый раз Stamp есть 0
а в хроме метка времени - разумное число.
И в Firefox, и в Chrome второй тайм-штамп - разумное число.
2 ответа
Решение
http://api.jquery.com/event.timeStamp/
Примечание: из-за ошибки, открытой с 2004 года, это значение не заполняется правильно в Firefox, и невозможно узнать время, когда событие было создано в этом браузере.
Ошибка #238041 - nsDOMEvent::AllocateEvent назначает PR_Now() в PRUint32
Спецификация W3C гласит:
Используется для указания времени (в миллисекундах относительно эпохи), в которое было создано событие. Из-за того, что некоторые системы могут не предоставлять эту информацию, значение timeStamp может быть недоступно для всех событий. Если недоступно, будет возвращено значение 0.