カラーボックスは、インラインフレームの内側に何を知ることができませんので、自動サイズ変更は、あなたが期待するように動作することはできません。
私はそのようにそれを実行します。これらのオプションでカラーボックスを開いたときにデフォルトの幅+高さを設定:カラーボックスはIFRAMEを開いて、ロードします:
{ iframe: true, innerWidth: 430, innerHeight: 370, scrolling: false, ... }
をあなたのコンテンツのための最も理にかなってサイズを選択この箱に入れる。 IFRAMEのHTML本体の終わりには、IFRAME内からカラーボックスのサイズを変更し、この小さなスクリプト、配置:動作するように2番目のスクリプトについて
$(function(){
parent.$.colorbox.resize({
innerWidth:$('body').width(),
innerHeight:$('body').height()
});
});
を、jQueryのは、インラインフレームの内側にロードする必要があります。それ以外の場合は、ネイティブJavaScriptを使用してこのタスクを実行する必要があります。
iframe内のすべての画像の幅/高さが設定されているか、完全に読み込まれていることを確認してください。それ以外の場合、innerWidth/innerHeightは不正な値を返します。
これは良いスクリプトです。また、ColorBoxがiframeに含まれている内容を知っているのではなく、BROWSERがコンテンツが電線やDOMに届くまでわからないという問題も技術的には理解できません。 –
誰かが最終的に実用的な解決策を見つけました!ありがとうございました! – user1380540
残念ながら、これはiFrameのソースを変更できる場合にのみ機能します。何も制御できないものをロードしている場合、唯一の選択肢は高さ/幅を手動で設定することです。 –