@@ -3,6 +3,7 @@ import initObservers from './observer';
33import {
44 mirror ,
55 on ,
6+ getTopWindow ,
67 getWindowWidth ,
78 getWindowHeight ,
89 polyfill ,
@@ -97,20 +98,21 @@ function record<T = eventWithTime>(
9798 } ;
9899
99100 function takeFullSnapshot ( isCheckout = false ) {
101+ const twindow = getTopWindow ( ) ;
100102 wrappedEmit (
101103 wrapEvent ( {
102104 type : EventType . Meta ,
103105 data : {
104- href : window . location . href ,
106+ href : twindow . location . href ,
105107 width : getWindowWidth ( ) ,
106108 height : getWindowHeight ( ) ,
107109 } ,
108110 } ) ,
109111 isCheckout ,
110112 ) ;
113+
111114 const [ node , idNodeMap ] = snapshot (
112- window . top && window . top . document ?
113- window . top . document : document ,
115+ tdocument ,
114116 blockClass ,
115117 inlineStylesheet ,
116118 maskInputOptions ,
@@ -121,25 +123,27 @@ function record<T = eventWithTime>(
121123 }
122124
123125 mirror . map = idNodeMap ;
126+ const twindow = getTopWindow ( ) ;
127+ const tdoc = twindow . document ;
124128 wrappedEmit (
125129 wrapEvent ( {
126130 type : EventType . FullSnapshot ,
127131 data : {
128132 node,
129133 initialOffset : {
130134 left :
131- window . pageXOffset !== undefined
132- ? window . pageXOffset
133- : document ?. documentElement . scrollLeft ||
134- document ?. body ?. parentElement ?. scrollLeft ||
135- document ?. body . scrollLeft ||
135+ twindow . pageXOffset !== undefined
136+ ? twindow . pageXOffset
137+ : tdoc ?. documentElement . scrollLeft ||
138+ tdoc ?. body ?. parentElement ?. scrollLeft ||
139+ tdoc ?. body . scrollLeft ||
136140 0 ,
137141 top :
138- window . pageYOffset !== undefined
139- ? window . pageYOffset
140- : document ?. documentElement . scrollTop ||
141- document ?. body ?. parentElement ?. scrollTop ||
142- document ?. body . scrollTop ||
142+ twindow . pageYOffset !== undefined
143+ ? twindow . pageYOffset
144+ : tdoc ?. documentElement . scrollTop ||
145+ tdoc ?. body ?. parentElement ?. scrollTop ||
146+ tdoc ?. body . scrollTop ||
143147 0 ,
144148 } ,
145149 } ,
@@ -255,9 +259,10 @@ function record<T = eventWithTime>(
255259 ) ,
256260 ) ;
257261 } ;
262+ const tdoc = getTopWindow ( ) . document ;
258263 if (
259- document . readyState === 'interactive' ||
260- document . readyState === 'complete'
264+ tdoc . readyState === 'interactive' ||
265+ tdoc . readyState === 'complete'
261266 ) {
262267 init ( ) ;
263268 } else {
0 commit comments