0

チャット プログラム (サード パーティ) を含めたページがあり、iframe 内にチャット ウィンドウが含まれています。だから今、親ドキュメントのボタン クリック イベントをバインドしたいと思います。

以下は階層です: -

メイン ドキュメント > iframe > iframe >チャット ウィンドウ ボタン (このボタンを親ドキュメントにバインド)

このコードを試しました

<script>
$(window).ready(function($){

    var frameWindow = $('#livservMiddleFrame').get(0).contentWindow;
    console.log(frameWindow.document.body.innerHTML);

});
</script>

これにより、最初の iframes HTML の出力が得られます。これは単なる試行でした。それが可能かどうかはわかりませんが、ハイジャックによって入手できるのですか。

前もって感謝します。

4

2 に答える 2

0

javascript または jquery を使用して iframe を変更することはできません。繰り返しますが、次のコードを確認できます。それはあなたを助けるかもしれません

$(document).ready(function() {
    $('iframe').contents().find('button').click(function() {

});
});
于 2013-05-20T11:48:44.747 に答える
0

iframe に関する私の個人的な経験から、単純な JS を使用して iframe オブジェクトを「フェッチ」する方が信頼性が高いことがわかりました。DOM > iframe1 > iframe2 > chat-button があるとします。windoe オブジェクトを取得する方法は次のとおりです。

var frame1Win = window.frames["iframe1"].window; // "iframe1" is iframe name, not id
var frame2Win = frame1Win.frames["iframe2"].window;

PS: ブラウザによっては contentWindow を使用する必要がある場合があります。

また、次の方法を使用して、JQuery を使用してクリック イベントをアタッチできます。

$(frame2Win).find("#chat-button").on("click",function() {
  // do something
});
于 2013-05-20T11:58:23.447 に答える