2012-02-23 3 views
0

奇妙なjqueryのiframeの高さ表示

function resizeIframe() {  
    $("#content").css("height", ""); 
    $("#content").css("width", ""); 
    var iFrameHeight = $('iFrame').contents().height(); 
    var iFrameWidth = $('iFrame').contents().width(); 

    $("#content").css("height", iFrameHeight); 
    $("#content").css("width", iFrameWidth); 
} 

これがそのようにiframeの高さは約1457pxあるテキストの下の空きスペースがたくさんあると呼ばれているとき。

function resizeIframe() {  
    $("#content").css("height", ""); 
    $("#content").css("width", ""); 

    var iFrameHeight = $('iFrame').contents().height(); 
    var iFrameWidth = $('iFrame').contents().width(); 

    alert($("#content").height()); <-------------this alert 

    $("#content").css("height", iFrameHeight); 
    $("#content").css("width", iFrameWidth); 
} 

を、それが1050pxのコンテンツのサイズに収まるこのアラートを追加した後:私はこのような警告を追加したときしかし、奇妙なことがあります。私はそれがなぜそれをやっているのか、それをどう解決するのか、全く混乱しています。どんな助けもありがとうございます。

+0

回答に2つのデモを含めることができますか?たとえば、http://jsfiddle.net/を使用します。また、質問のタイトルから誤字を取り除いてください。それは 'Wierd'ではなく' Weird'でなければなりません。さらにうまくいって、よりわかりやすいタイトルを選んでください。 –

+0

あなたはいつこのメソッドを呼び出していますか? –

+0

@KevinB - これはどのように呼び出されますか:$(document).ready(function(){ $( "#iFrame")load(function(){resizeIframe();}); } – NoviceMe

答えて

0

通常、親ページのiFrameのサイズを設定する必要があります。そうしないと、親コンテナの幅と高さがすべて取り込まれ、枠付きウィンドウのサイズが設定されます。 したがって、$('iFrame').contents().height()は、あなたがすでに知っている実際にレンダリングされた高さを返します。

私はこれらのコードであなたの意図を理解していません。

フレーム化されたページの元のダイナミックサイズを確認したい場合、これは難しい場合があります。私はまだこれについてのアイデアはありません。

編集:このようなスクリプトを使用して、動的サイズの問題を修正できます。 http://www.dynamicdrive.com/dynamicindex17/iframessi2.htm

関連する問題