Приветствую!
Делаю виджет (форма бронирования) для встройки в чужие сайты. Возникла типичная проблема - авторесайза этого iframe.
Javascript у меня на слабом уровне. Раньше виджет встраивался просто:
<script src="http://site.com/postmessage.js"></script>
<script src="http://site.com/framemanager.js"></script>
<iframe width="700" height="0" src="site.com?id_tour=123" onload="FrameManager.registerFrame(this)" id="id" name="name" scrolling="no" frameborder="0" marginheight="0" marginwidth="0" /></iframe>
Скрипты (postmessage,framemanager) для кросс-браузерной передачи данных - я нашел в какой-то статье и кое-как прикрутил. Все работало. Теперь понял, что "голый" айфрейм - это не правильно, и начал делать по-взрослому:
<div id="btn"><!-- тут будет iframe --></div>
<script type="text/javascript" language="javascript">
var tnSet = {
id_tour: 123
};
(function() {
var script = document.createElement('script');
script.type = 'text/javascript';
script.async = true;
script.src = (document.location.protocol == "https:" ? "https:" : "http:") + "//site.com/btn.js";
document.getElementsByTagName('head')[0].appendChild(script);
})();
</script>
То есть: подключаем на страницу btn.js, который в свою очередь вставляет на страницу (innerHTML) iframe с виджетом.
И совершенно не понимаю, как в текущей реализации подступиться к проблеме авторесайза.