Хорошо, сначала небольшая справочная информация: я пытаюсь встроить веб-страницу в другую.Подстраница представляет собой небольшое веб-приложение, написанное на javascript и html, которое занимает несколько экранов ввода (переключатели, текстовые поля и т. Д.) И дает экран с результатами в конце.Каждый из этих экранов может иметь разный размер.
Существует два метода, которые я пытался использовать для встраивания:
1) Скопируйте все html и javascript из подстраницы вглавной страницы и вставьте ее в div / table / what.
2) Сохраните подстраницу в своем собственном файле и вставьте ее, используя embed / object / iframe.
Используя первыйметод, страница ведет себя как следует;единственная реальная проблема (помимо того, что это грязное решение) состоит в том, что вложенная страница, которую я встраиваю, фактически создается внешним приложением, и очень часто страница заменяется более новой версией.Это более или менее исключает использование первого метода в качестве долгосрочного решения.
Теперь у второго метода есть свои проблемы.Поскольку высота встроенной страницы javascript изменяется, ее размер должен меняться в зависимости от размера.Я могу изменить размер, используя любое из приведенных здесь решений , однако они не обновляют размер кадра по мере прохождения пользователем каждого экрана.
Ближайшее решение IДо сих пор удалось придумать, использует обработчик document.onclick для перехвата любого нажатия, которое может привести к появлению следующего экрана подстраницы.Обработчик делает паузу на очень короткое время (чтобы открыть следующий экран), а затем вызывает необходимую функцию изменения размера.Однако это похоже на очень хакерское решение, и есть также немного заметная задержка, когда полоса прокрутки появляется на боковой стороне фрейма, когда она еще не развернута, чтобы соответствовать новому контенту.Я думаю, что должен быть лучший способ сделать это.