iframe内のsrcの表のサイズを変更する

次のコードは機能し、私はボディのクリックで警告を発することができます。私がしたいのは、iframeが読み込まれ、iframe内のテーブルの幅を自動的に100%に変更することです。クリックの代わりに、どのように幅の読み込みを変更できますか?

$("iframe[name=myheader]").load(function() {
            var iframe_body = window.myheader.document.getElementsByTagName("body")[0];
            $(iframe_body).click(function() {
                alert("hello, you touched me~");
                $(this).find("table").css("width","100%"); 
            });

        });
1
同じドメインにあります。 .clickを each に変更すると、アラートをそのまま残している場合にのみ動作します。遅延がなくなるまでテーブルが見つからない、iframeの実際のコンテンツが完全にレンダリングされていない可能性があります。
追加された 著者 Rob,
2つのアプリケーションをサポートする動的に構築されたページです。 1つのアプリでは100%に拡大しないでください。もう1つは100%に拡大する必要があります。
追加された 著者 Rob,
フレームページは同じドメイン内になければなりません
追加された 著者 Samuel Liew,
どうしてテーブル自体が入っているページにサイズ変更コードを入れないのですか?
追加された 著者 Samuel Liew,

2 答え

新しい

このコードをiframeドキュメントに入れる:)

$(document).ready(function(){
$("table").css("width","100%");
});

古い - - - - - - - - -

iframeのload()関数はiframeのロードが完了したときにのみ起動されるので、click()イベントを削除してサイズを変更できます。

$("iframe[name=myheader]").load(function() {
            var iframe_body = window.myheader.document.getElementsByTagName("body")[0];
            //$(iframe_body).click(function() {
                alert("hello, you touched me~");
                $(this).find("table").css("width","100%"); 
            //});

        });
0
追加された
それはうまくいきません、上記の私のコメントを参照してください。
追加された 著者 Rob,
Moeは動的に作成されたiframeなので、$( "table ... in doc readyは動作しません。
追加された 著者 Rob,

iframeのonloadイベントを試すことができます。たとえば、iframeがこのようなものである場合

    <iframe id="frameElem" width="100%" height="100%" onload="frameLoaded(); return false" />

今、JavaScriptコードでは、

    function frameLoaded(){
    $('#frameElem').contents().find('table').css("width","100%");
    }
0
追加された