File tree Expand file tree Collapse file tree 1 file changed +20
-3
lines changed
app/code/Magento/PageCache/view/frontend/web/js Expand file tree Collapse file tree 1 file changed +20
-3
lines changed Original file line number Diff line number Diff line change 6
6
define ( [
7
7
'jquery' ,
8
8
'domReady' ,
9
+ 'consoleLogger' ,
9
10
'jquery/ui' ,
10
11
'mage/cookies'
11
- ] , function ( $ , domReady ) {
12
+ ] , function ( $ , domReady , consoleLogger ) {
12
13
'use strict' ;
13
14
14
15
/**
@@ -46,14 +47,30 @@ define([
46
47
// prevent cross origin iframe content reading
47
48
if ( $ ( element ) . prop ( 'tagName' ) === 'IFRAME' ) {
48
49
iframeHostName = $ ( '<a>' ) . prop ( 'href' , $ ( element ) . prop ( 'src' ) )
49
- . prop ( 'hostname' ) ;
50
+ . prop ( 'hostname' ) ;
50
51
51
52
if ( window . location . hostname !== iframeHostName ) {
52
53
return [ ] ;
53
54
}
54
55
}
55
56
56
- $ ( element ) . contents ( ) . each ( function ( index , el ) {
57
+ // rewrite jQuery contents()
58
+ var contents = function ( element ) {
59
+ return $ . map ( element , function ( elem ) {
60
+ try {
61
+ return $ . nodeName ( elem , "iframe" ) ?
62
+ elem . contentDocument || ( elem . contentWindow ? elem . contentWindow . document : [ ] ) :
63
+ $ . merge ( [ ] , elem . childNodes ) ;
64
+ } catch ( e ) {
65
+ consoleLogger . error ( e ) ;
66
+ return [ ] ;
67
+ }
68
+ } ) ;
69
+ } ;
70
+
71
+ var elementContents = contents ( $ ( element ) ) ;
72
+
73
+ $ . each ( elementContents , function ( index , el ) {
57
74
switch ( el . nodeType ) {
58
75
case 1 : // ELEMENT_NODE
59
76
lookup ( el ) ;
You can’t perform that action at this time.
0 commit comments