問題:
小さなビューポート (iframe より小さい) を扱う場合、Fancybox は固定位置から絶対位置に変わります。大きな画面では、iframe は画面の中央に固定されますが、小さな画面 (iframe よりも 1 ピクセル小さい) では、ユーザーはホスティング ページを突然下にスクロールして、iframe を見失う可能性があります。
私が試したこと:
私が知る限り、このコードが原因で発生します。
if (current.autoCenter && current.fixed && !onlyAbsolute && height <= viewport.h && width <= viewport.w) {
rez.position = 'fixed';
} else if (!current.locked) {
rez.top += viewport.y;
rez.left += viewport.x;
}
最後の 2 つの条件 ( height <= viewport.h && width <= viewport.w
) を削除すると問題は解決しますが、元のソース コードの改ざんは避けたいと考えています。
次のオプションの任意の組み合わせは、関連性がないか、悪影響があるか、まったく効果がありません: fixed
、scrolling
、fitToView
、scrollOutside
。
質問:
Fancybox iframe を常にビューポートの上部に強制的に接続できる、見逃した非表示/利用可能なオプションはありますか?
編集:または、さらに良いことに、外側のスクロールをiframeサイズでスクロールする方法はありますか? つまり、iframe が非表示にならないように、iframe 全体を表示するのに十分ですが、それ以上ではありません。