1

特定の HTML 要素が IFrame に作成されるのをブロックする方法はありますか?

私は JQuery を使用していませんが、使用してもかまいません。

私の基本コードは次のようなものです:

<iframe id="id_frame_01" src="somepage"></iframe>
<script type="text/javascript>

frame = document.getElementById('id_frame_01').contentWindow.document;

frame.onload = function(){
    var toremove = frame.getElementsByTagName('iframe');
    toremove.outerHTML = '';
    toremove = frame.getElementsByTagName('object');
    toremove.outerHTML = '';
}

</script>

iframe のコンテンツに完全にアクセスできますが、onload イベントの後で要素を手動で削除しようとすると、onload イベントが遠すぎて、(例) YouTube ビデオの再生が開始されます。

削除する要素の ID はわかっていますが、Web サイトの「更新」によってシステムが壊れる可能性があるため、それらを使用したくありません。代わりに、要素の種類でフィルタリングすることを好みます。

これはブラウザ固有のページで、Chrome 専用です。

作成されていない要素に onchange イベントをアタッチする方法はありますか?

要素の読み込みを傍受する方法はありますか?

4

1 に答える 1

1

ページを iframe に直接ロードする代わりに、ajax (または jQuery では $.ajax) を使用できます。これにより、ページの html をフィルタリングし、ユーザーに表示したいコンテンツのみを挿入できます。

あなたは iframe コンテンツに完全にアクセスできると言っているので、実装が同じオリジン ポリシーに従っていると仮定しています。

于 2013-03-10T00:12:38.417 に答える