Какая-то магия... Клиенты попросили виджет моего сервиса
oknardia.ru ... Чтобы сделать все быстро и не городить огород, решил все сделать с помощью
<iframe>
, а с асинхронными JS заморочиться позже. Веб-разработкой давно не занимался, забросил лет 15 назад и вернулся к сайтостроению год назад. Но помнил, что никаких проблем с iframe не было, и потому не предвидел проблем и сейчас. Создал себе сайтик для отладки виджета:
widget.oknardia.ru. В нем прописано:
<iframe seamless src="http://oknardia.ru/widget/id_2" name="oknardia" width="100%">
Если бы ваш браузер не поддерживал iframe, тут был бы виджет!
</iframe>
И, бац! А оказалось, такая простая штука, не работает. Причем, вижу в логах, что обращения к /widget/id_2 проходят, и сервер отдает все чин по чину с кодом 200.
Возможно, все дело в настройках безопасности браузера, но все браузеры отрабатывают одинаково.
Для примера вставил еще один
<iframe>
с внешних сайтов. Некоторые сайты показывает, некоторые нет. Например,
iframe, подгружающий что-то с toster, отрабатывается. Такое впечатление, что что-то в самом HTML-контенте для фрейма не то. Что изменилось в концепции
iframe за последние 15 лет? Что надо "сказать" в HTML для фейма чтобы он заработал?
Кстати, и почему атрибут
seamless не работает как положено? Он же должен, кроме прочего, обеспечивать, что "высота формируется автоматически на основе содержимого". Для фрейма с подгрузкой с toster.ru это не обеспечивается. Это вообще работает?