2012-04-27 19 views
1

IE9でColorboxバージョン1.3.19とjQuery 1.7.2を使用しています。私は自分のカラーボックスを設定するには、次のコードを持っている:IE9でColorbox(jQuery)resize()が動作しない

JS:

var colorbox_defaults = 
{ 
    iframe   : true, 
    title   : false, 
    innerWidth  : 500, 
    innerHeight  : 325, 
    slideshow  : false, 
    slideshowStart : "", 
    slideshowStop : "", 
    current   : "", 
    previous   : "", 
    next    : "", 
    close   : "" 
}; 

$("#my_link").colorbox(colorbox_defaults); 

HTML:

<a id="my_link" href="some_page.php">Click Here</a> 

すべてのコンテンツがページにロードされた後、私はサイズを変更し、このコードを持っていますcolorboxはページの内容の高さに基づいています(データはAJAXリクエストによって入力されるため、ページの長さは可変です)。

var options = { innerHeight : $('html').height() }; 
parent.$.fn.colorbox.resize(options); 

このコードはFF12とChrome18の両方で完全に機能しますが、IE9ではサイズを変更できません。なぜどんなアイデア?

+1

.height 'への呼び出し()'は何を返すのですか?時々IEは他のブラウザが数値を与えると "auto"と言います。ページの一番下に目に見えない(隠されていない)要素を置き、オフセットをチェックしてみましたか? – Pointy

+0

'console.log($( 'html').height());'は500を返します。いいえ、私は底に目に見えない要素を置いていません。私はこの問題の適切な解決策ではないはずです。 編集:他のブラウザのIE9が正しい高さを返さない理由を知りたいですか? – 12hys

+0

あなたに伝えられませんでした。 IEはIEです。 – Pointy

答えて

1

問題を解決するために私は何をしましたか?どうやら、FFやChromeのような他のブラウザと同じように、IE9はhtmlタグの高さを報告していません。正しい身長を報告したbodyタグを選択しなければなりませんでした。次へ

私のコードの変更:

var options = { innerHeight : $('body').outerHeight(true) }; 
parent.$.fn.colorbox.resize(options); 
関連する問題