Как заставить IFRAME srcdoc синхронизировать JavaScript - PullRequest
0 голосов
/ 04 апреля 2019

Мы используем элемент <iframe srcdoc="..."></iframe> для загрузки некоторого встроенного HTML.Однако мы сталкиваемся с этим неожиданным поведением: при добавлении узлов javascript (т.е. динамически через jQuery('<script src="1.js"></script><script src="2.js"></script>').appendTo(jQuery('body')) 2 узла загружаются асинхронно, при этом 2 могут выполняться до 1, что приводит к ошибкам зависимости.

Это полностьюнепредвиденное поведение и не произойдет, если мы переместим встроенный HTML-код в отдельный файл и загрузим с помощью src.

Поведение согласовано между Chrome и FF.

Вопрос 1: Это ожидается?Это результат каких-либо спецификаций?Мы предполагаем , что это может произойти из-за того, что srcdoc является не чем иным, как прославленной оболочкой для document.write(), которая традиционно демонстрирует это поведение (асинхронной загрузки javascript), но мы не можем найти никаких спецификаций.

Вопрос 2 : Как мы можем это исправить, чтобы мы могли использовать srcdoc и синхронизировать загрузку узлов JS?

Дополнительный (бонус) связанный Вопрос 3: Документ во фрейме srcdoc, похоже, не имеет defaultView ... опять-таки согласованности между браузерами.Почему в мире это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...