From 39671f4d78441c61c52b645026ed643637a33f4e Mon Sep 17 00:00:00 2001 From: Min Xiang Date: Thu, 9 Jan 2025 07:44:58 +0800 Subject: [PATCH] use unique hash for MouseTracker --- src/mousetracker.js | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/mousetracker.js b/src/mousetracker.js index e56cb609..602e985f 100644 --- a/src/mousetracker.js +++ b/src/mousetracker.js @@ -135,7 +135,7 @@ }; } - this.hash = Math.random(); // An unique hash for this tracker. + this.hash = uniqueHash(); // An unique hash for this tracker. /** * The element for which pointer events are being monitored. * @member {Element} element @@ -3764,4 +3764,19 @@ } } + + /** + * @function + * @private + * @inner + */ + function uniqueHash( ) { + let uniqueId = Date.now().toString(36) + Math.random().toString(36).substring(2); + while (uniqueId in THIS) { + // rehash when not unique + uniqueId = Date.now().toString(36) + Math.random().toString(36).substring(2); + } + return uniqueId; + } + }(OpenSeadragon));