1

Web ページ内に iframe があり、準備ができたら何かしたいと考えています。私は2つの方法を試しました:

  • 親ページでは、これを使用します

    jQuery('#iframe').load(function() {
     //my code here
    });
    

このコードは、iframe の読み込みが終了したときに実行されますが (希望どおり)、iframe が別のドメインを指しているため、この時点でそのコンテンツにアクセスできません (クロスドメインの問題)。

  • iframe内では、これを使用します:

     jQuery('body').ready(function() {
     });
    

このコードは、iframe の読み込みが開始されたときに実行されますが、これは私が望むよりもはるかに早いため、コードは正しく機能しません。

iframe の読み込みが完了し、DOM 操作の準備が整ったときにコードを実行する方法

調べてみると、easyXDM が解決策かもしれないことがわかりましたが、もっと簡単な解決策が存在するのだろうかと思います。

ありがとうございました。

4

2 に答える 2

0

jquery を使用しないでください。javascript の知識が混乱します。

次のコードを使用できます

<script type="text/javascript">
    function show(){
        var iframe=document.getElementById('aa');
        var h=iframe.contentWindow.document.body.offsetHeight;
        alert(h)    
    }
</script>
</head>
<body>
<iframe id="aa" src="3.html" frameborder="0" scrolling="no" width="100%" height="200" onload="show()"></iframe>
</body>
于 2012-02-28T03:00:01.960 に答える
0

iframe の準備ができたことを知り、その iframe クロスドメインからコンテンツにアクセスしたい場合は、easyXDM が適していると思います。

基本的にこの例を実装し、コードを「onReady」メソッドに追加するだけです。

于 2012-03-12T12:20:55.913 に答える