2010-03-07 4 views
6

Я могу изменить размер высоты с помощью части $.fancybox.resize();, но ширина просто не обновляется в соответствии с новым контентом. Мысли?FancyBox resize width

ответ

8

fancybox api docs От:

$.fancybox.resize: "Авто-FancyBox изменяет высоту, чтобы соответствовать высоте содержания."

Похоже, что он не предназначен для регулировки ширины.

Если вы хотите отрегулировать ширину, вы можете сделать это, вручную изменив размеры элементов #fancybox-wrap и #fancybox-inner. После некоторых очень быстрой проверки, это выглядит как #fancybox-wrap установлен на 20px шире #fancybox-inner:

$('#fancybox-inner').width(400); 
$('#fancybox-wrap').width(420); 

Вы также можете контролировать ширину при первом регистре FancyBox используя width вариант:

$('#somelink').fancybox({ width: '100px' }); 
+0

это работает, но это испортило мой заголовок – mcgrailm

4

В новее версии FancyBox (1.3.4 в моем случае) использовать

$('#fancybox-content').width(600); 

вместо

$('#fancybox-inner').width(400); 

для ручной регулировки ширины

1

внести некоторые изменения в jquery.fancybox.js возле Abou линии nubmer: +837 изменение

current.width = loadingBay.width(); 

в

current.width = loadingBay.width() + 2*current.padding; 

он работал прекрасно меня.

1

Вот что работает для меня:

$('#fancybox-wrap, #fancybox-outer, #fancybox-content').css('width', 'auto'); 
$.fancybox.center(); 
-1

Просто откройте jquery.fancybox.js и добавить свою собственную ширину. Вот мой код с шириной = 72%.

// Reset dimensions so we could re-check actual size 
     wrap.add(skin).add(inner).width('72%').height('auto').removeClass('fancybox-tmp'); 
Смежные вопросы