2016-07-13 17 views
0

ライトボックスを投げる広告を作成しようとしていますが、広告自体がiframeの内側に配置されるか、サイトに注入される(同じドメインではありません)。サイトによっては、iframe内にあるものと、サイト上にあるものだけがあります。私は、広告が掲載されるサイトを管理することはできません。ウェブサイトにコードを挿入しないインタースティシャル広告(非同期広告)

postMessage()を使用してiframe内からデータを送信し、受信したデータで親ウィンドウでコマンドを実行できますが、親ウィンドウにコードを配置することはできません。両方のシーンで共通のソリューションがありますか?私はいくつかのコンテンツを親ウィンドウにプッシュしたいと思います。

このコードは、私が求めていますが、私はそれをやっているのか分からない、まさに行います

<script src="http://bs.serving-sys.com/BurstingPipe/adServer.bs?cn=rsb&c=28&pli=17085731&PluID=0&w=1&h=1&ord=[timestamp]&ucm=true&ncu=$$%c$$"></script> 
<noscript> 
<a href="%chttp%3A//bs.serving-sys.com/BurstingPipe/adServer.bs%3Fcn%3Dbrd%26FlightID%3D17085731%26Page%3D%26PluID%3D0%26Pos%3D67849382" target="_blank"><img src="%%VIEW_URL_ESC%%.http://bs.serving-sys.com/BurstingPipe/adServer.bs?cn=bsr&FlightID=17085731&Page=&PluID=0&Pos=67849382" border=0 width=1 height=1></a> 
</noscript> 

答えて

2

コードがフレーム/ IFRAME内にある、あなたは親フレームへのアクセス権を持っていない場合/ windowと親フレーム/ウィンドウには、postMessage()を介してAPI設定がないので、ポップオーバー/ライトボックスを読み込むことはできません。

あなたがこれを行うことができる唯一の時間は、フレンドリーなiFrame(親フレーム/ウィンドウと同じドメイン)が使用されるか、親フレーム/ウィンドウへのアクセスを許可する回避策が行われた場合です。これが行われ、親にアクセスして変更したとしても、追加しようとしているものが意図されていない場合、またはサイトやスタイルシートを意図的にまたは意図せずに変更した場合、サイトのサイト運営者または所有者を怒らせることがあります。悪意ある可能性のあるスクリプトを挿入することができます。それを繰り返すと、広告を送信しているネットワークによっても禁止される可能性があります。

SafeFrameを使用している場合は、そのようにはできません。 SafeFrameは広告主がトップレベルのウィンドウ/フレームを変更できないように設計されており、拡張可能な広告タイプでもSafeFrame APIにポップオーバーがない場合は広告を展開するAPIを提供します。

テストしたい場合は、親/トップフレーム/ウィンドウへのアクセス権を持っている場合、あなたが試すことができます:

トップフレーム/ウィンドウの場合:親のために

try { window.top.location.href } catch(e) { 
    // Exception was thrown meaning you do not have access to the top window/frame! 
} 

(トップではないかもしれません - ほとんど)フレーム/ウィンドウ:

try { window.parent.location.href } catch(e) { 
    // Exception was thrown meaning you do not have access to the parent window/frame! 
} 
関連する問題