Я использую Fancybox для загрузки некоторого контента с помощью AJAX.
Содержание:
<div class="container">
<h2>An image</h2>
<div class="span-16 colborder center clearfix">
<img src="/system/images/apple.jpg">
</div>
<div class="span-7 last clearfix">
something here
<br>
something here
</div>
<div class="span-24 last">
FOOTER FOOTER FOOTER
</div>
</div>
JS :
$('a.edit-image').fancybox({
'autoScale' : false,
'scrolling' : 'no'
});
Контент загружается, но Fancybox рендерит только с высотой, чтобы вместить текст, оставляя изображение переполненным снизу. Изображение (которое может быть довольно большим) загружается за минуту, и я думаю, что Fancybox не ждет, пока он определит высоту, которую он должен отрендерить.
Размещение изображения в другом месте на странице (в виде предварительной загрузки) предотвращает ошибку. Кроме того, это происходит только при первом открытии Fancybox, потому что он кешируется каждый раз после этого.
Кто-нибудь знает наименее хакерский способ заставить Fancybox отображать на правильной высоте, или просто установить его высоту в 'auto'?
Спасибо!