Fancybox пытается автоматически изменять размеры и центрировать себя каждый раз, когда изменяется размер окна браузера, и это событие часто вызывается на iPad и iPhone. Для причудливого блока 1.3.4 код, управляющий этим, - строка 608:
$(window).bind("resize.fb", $fancybox.resize);
Чтобы исправить эту проблему, я изменил эту часть fancybox JS и добавил еще одну опцию, называемую «resizeOnWindowResize», которую можно установить на «ложь» для пользователей iPad и iPhone или просто отключить все вместе.
if(currentOpts.resizeOnWindowResize) {
$(window).bind("resize.fb", $fancybox.resize);
}
Вы также должны добавить значение по умолчанию для этого параметра в хэш-карту $ .fn.fancybox.defaults.
Затем при вызове fancybox вы можете использовать эту новую опцию:
$('#fancybox_link').fancybox(${'scrolling': 'no',
width: 'auto',
height: 'auto',
centerOnScroll: false,
resizeOnWindowResize : false});