1
0
mirror of https://github.com/videojs/video.js.git synced 2025-01-06 06:50:51 +02:00

fix: use performance.now() when possible (#5870)

This commit is contained in:
Thijs Triemstra 2019-04-24 17:29:22 +02:00 committed by Gary Katsevman
parent c59ba5f465
commit 629594ece5
3 changed files with 6 additions and 5 deletions

View File

@ -1128,7 +1128,7 @@ class Component {
pageY: event.touches[0].pageY pageY: event.touches[0].pageY
}; };
// Record start time so we can detect a tap vs. "touch and hold" // Record start time so we can detect a tap vs. "touch and hold"
touchStart = new Date().getTime(); touchStart = window.performance.now();
// Reset couldBeTap tracking // Reset couldBeTap tracking
couldBeTap = true; couldBeTap = true;
} }
@ -1166,7 +1166,7 @@ class Component {
// Proceed only if the touchmove/leave/cancel event didn't happen // Proceed only if the touchmove/leave/cancel event didn't happen
if (couldBeTap === true) { if (couldBeTap === true) {
// Measure how long the touch lasted // Measure how long the touch lasted
const touchTime = new Date().getTime() - touchStart; const touchTime = window.performance.now() - touchStart;
// Make sure the touch was less than the threshold to be considered a tap // Make sure the touch was less than the threshold to be considered a tap
if (touchTime < touchTimeThreshold) { if (touchTime < touchTimeThreshold) {

View File

@ -3,6 +3,7 @@
* @module dom-data * @module dom-data
*/ */
import * as Guid from './guid.js'; import * as Guid from './guid.js';
import window from 'global/window';
/** /**
* Element Data Store. * Element Data Store.
@ -23,7 +24,7 @@ export const elData = {};
* @constant * @constant
* @private * @private
*/ */
const elIdAttr = 'vdata' + (new Date()).getTime(); const elIdAttr = 'vdata' + Math.floor(window.performance && window.performance.now() || Date.now());
/** /**
* Returns the cache object where data for an element is stored * Returns the cache object where data for an element is stored

View File

@ -61,10 +61,10 @@ export const bind = function(context, fn, uid) {
* @return {Function} * @return {Function}
*/ */
export const throttle = function(fn, wait) { export const throttle = function(fn, wait) {
let last = Date.now(); let last = window.performance.now();
const throttled = function(...args) { const throttled = function(...args) {
const now = Date.now(); const now = window.performance.now();
if (now - last >= wait) { if (now - last >= wait) {
fn(...args); fn(...args);