From 5fbb459a8e954454a37664e059eeb5faba84205e Mon Sep 17 00:00:00 2001 From: bachmanity1 <81428651+bachmanity1@users.noreply.github.com> Date: Wed, 1 Apr 2026 12:00:00 +0800 Subject: [PATCH] fix media playback bug (#80) --- src/rebuild.ts | 6 +++++- src/snapshot.ts | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/rebuild.ts b/src/rebuild.ts index 0d269b0f..ef88103b 100644 --- a/src/rebuild.ts +++ b/src/rebuild.ts @@ -202,10 +202,14 @@ function buildNode( if (name === 'rr_height') { (node as HTMLElement).style.height = value; } + if (name === 'rr_mediaCurrentTime') { + (node as HTMLMediaElement).currentTime = n.attributes.rr_mediaCurrentTime as number + } if (name === 'rr_mediaState') { switch (value) { case 'played': - (node as HTMLMediaElement).play(); + (node as HTMLMediaElement).play().catch(e => console.warn("media playback error", e)); + break; case 'paused': (node as HTMLMediaElement).pause(); break; diff --git a/src/snapshot.ts b/src/snapshot.ts index c6249eba..14f87e37 100644 --- a/src/snapshot.ts +++ b/src/snapshot.ts @@ -464,6 +464,7 @@ function serializeNode( attributes.rr_mediaState = (n as HTMLMediaElement).paused ? 'paused' : 'played'; + attributes.rr_mediaCurrentTime = (n as HTMLMediaElement).currentTime } // scroll if ((n as HTMLElement).scrollLeft) {