0

Web サイトの上部に div を配置するユーザー スクリプトを作成しています。ほとんどの場合は機能しますが、サイトに iframe がある場合、div も iframe コンテンツの上部に挿入されます。iframe から div を削除したい。

これまでの私のコードは次のとおりです。

function createDiv(){
    var userBar=document.createElement('DIV');
    userBar.style.height='10px';
    userBar.style.width='100%';
    userBar.style.border='3px solid black';
    userBar.id='userBar'
    document.body.appendChild(userBar);
    document.body.insertBefore(userBar,document.body.childNodes[0]);

    var iframe=document.getElementsByTagName("iframe")[0];
    var content=frame.contentDocument || frame.contentWindow.document;
    content.removeChild(content.userBar);
}

同じ起源の問題に遭遇しているように感じます。もしそうなら、コンテンツが iframe に書き込まれないようにする方法はありますか?

4

1 に答える 1

1
if ( window.self === window.top ) { not in a frame } else { in a frame } 

divを挿入するコードの前に、最初に上記の条件を確認してください

元のリンク:

Web ページが iframe 内にロードされているか、ブラウザ ウィンドウに直接ロードされているかを識別する方法は?

于 2013-07-02T22:24:33.973 に答える