diff --git a/vendor/magento/module-page-cache/view/frontend/web/js/page-cache.js b/vendor/magento/module-page-cache/view/frontend/web/js/page-cache.js index fccc8510ffc..2a43ff29a35 100644 --- a/vendor/magento/module-page-cache/view/frontend/web/js/page-cache.js +++ b/vendor/magento/module-page-cache/view/frontend/web/js/page-cache.js @@ -6,9 +6,10 @@ define([ 'jquery', 'domReady', + 'consoleLogger', 'jquery/ui', 'mage/cookies' -], function ($, domReady) { +], function ($, domReady, consoleLogger) { 'use strict'; /** @@ -53,7 +54,23 @@ define([ } } - $(element).contents().each(function (index, el) { + // rewrite jQuery contents() + var contents = function (element) { + return $.map(element, function (elem) { + try { + return $.nodeName(elem, "iframe") ? + elem.contentDocument || (elem.contentWindow ? elem.contentWindow.document : []) : + $.merge([], elem.childNodes); + } catch (e) { + consoleLogger.error(e); + return []; + } + }); + }; + + var elementContents = contents($(element)); + + $.each(elementContents, function (index, el) { switch (el.nodeType) { case 1: // ELEMENT_NODE lookup(el);