ファンシーボックスでiframeを表示します。iframe の HTML 内で、次のようにします。
<body style="width: 650px; height: 430px;">
次に、JSで次のことを行います。
$(".popup").fancybox({
padding : 0,
closeBtn : false,
autoSize : true,
fitToView : false,
beforeShow: function()
{
this.width = ($("iframe").contents().find("body").width());
this.height = ($("iframe").contents().find("body").height());
}
});
「.popup」は次のとおりです。
<a href="url.php" class="popup" data-fancybox-type="iframe">
その iframe 内に異なるサイズ (400x150 としましょう) の別の HTML をロードすると、fancybox は高さを調整しますが、幅は調整しません。
どんな助けでも大歓迎です!
編集1:
ファンシーボックスを初めて実行すると、「.fancybox-inner」divが次のようにスタイル設定されます
width: 650px; height: 430px;
次に、iframe 内を移動すると、「.fancybox-inner」div が次のようにスタイル設定されます
width: 650px; height: 150px;
しかし、2番目のHTML bodyタグはこのようなものです
<body style="width: 400px; height: 150px;">
編集2: