summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--assets/js/player.js15
1 files changed, 13 insertions, 2 deletions
diff --git a/assets/js/player.js b/assets/js/player.js
index c34da9b5..16bb2752 100644
--- a/assets/js/player.js
+++ b/assets/js/player.js
@@ -115,11 +115,22 @@ function addCurrentTimeToURL(url, base) {
}
/**
+ * Global variable to save the last timestamp (in full seconds) at which the external
+ * links were updated by the 'timeupdate' callback below.
+ *
+ * It is initialized to 5s so that the video will always restart from the beginning
+ * if the user hasn't really started watching before switching to the other website.
+ */
+var timeupdate_last_ts = 5;
+
+/**
* Callback that updates the timestamp on all external links
*/
player.on('timeupdate', function () {
- // Only update once every 5 seconds
- if ((Math.ceil(player.currentTime()) % 5) != 0) return;
+ // Only update once every second
+ let current_ts = Math.floor(player.currentTime());
+ if (current_ts > timeupdate_last_ts) timeupdate_last_ts = current_ts;
+ else return;
// YouTube links