Skip to content

Commit fe023d5

Browse files
committed
fix(replay): don’t remove preserved tags
1 parent 79e069b commit fe023d5

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

replay/injected-scripts/domReplayer.ts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ function replayDomEvent(event: IFrontendDomChangeEvent) {
151151

152152
const preserveElements = new Set<string>(['HTML', 'HEAD', 'BODY']);
153153
function isPreservedElement(event: IFrontendDomChangeEvent) {
154-
const { action, nodeId, nodeType, tagName } = event;
154+
const { action, nodeId, nodeType } = event;
155155

156156
if (nodeType === document.DOCUMENT_NODE) {
157157
idMap.set(nodeId, document);
@@ -163,7 +163,12 @@ function isPreservedElement(event: IFrontendDomChangeEvent) {
163163
return true;
164164
}
165165

166-
if (!preserveElements.has(event.tagName)) return false;
166+
let tagName = event.tagName;
167+
if (!tagName) {
168+
const existing = idMap.get(nodeId);
169+
if (existing) tagName = (existing as Element).tagName;
170+
}
171+
if (!preserveElements.has(tagName)) return false;
167172

168173
const elem = document.querySelector(tagName);
169174
if (!elem) {

0 commit comments

Comments
 (0)