Используя версию fancybox: 2.1.5 и попробовал все варианты, предложенные здесь, и ни один из них не работал, все еще показывая полосу прокрутки.
$('.foo').click(function(e){
$.fancybox({
href: $(this).data('href'),
type: 'iframe',
scrolling: 'no',
iframe : {
scrolling : 'no'
}
});
e.preventDefault();
});
Так же была некоторая отладка в коде, пока я не нашел это, поэтому он перезаписывает все параметры, которые я установил, и нет способа перезаписать это, используя множество параметров.
if (type === 'iframe' && isTouch) {
coming.scrolling = 'scroll';
}
В конце концов решение было использовать CSS! Важный хак.
.fancybox-inner {
overflow: hidden !important;
}
Ответственная строка кода:
current.inner.css('overflow', scrolling === 'yes' ? 'scroll' : (scrolling === 'no' ? 'hidden' : scrolling));
Fancybox раньше был надежным рабочим решением, и теперь я не нахожу ничего, кроме несоответствий. На самом деле спор о снижении рейтинга сейчас даже после покупки лицензии разработчика. Больше информации здесь, если вы не поняли, что вам нужен для коммерческого проекта: https://stackoverflow.com/a/8837258/560287