5

私は制御できないiframe内でサードパーティの HTML コンテンツを実行しています。場合によっては、javascript:window.close()を直接呼び出すリンクがあります。このようなもの:

<input type="button" onclick="javascript:window.close()" value ="CLOSE">

この要素の ID または配列位置を見つける方法がありません。

当然、iframe 内では無視されますが、このイベントが発生したときにキャッチする方法はありますか? 私は試した

window.addEventListener("close", closeHandler, false);
window.addEventListener("onbeforeunload", closeHandler, false);

しかし、それは完全に無視されます。何らかの方法ですべての JavaScript イベント/呼び出しをキャッチする方法はありますか? 任意の推奨事項を歓迎します。

4

1 に答える 1

0

私の知る限り、フレーム内のイベントをキャプチャする必要があります。フレームの内容を変更できない場合は、うまくいかない可能性があります。iframe コンテンツを変更できる場合は、そのイベント リスナーを追加して、親ウィンドウのグローバル関数を呼び出すように配置できます。または、postMessage を使用することもできます。

于 2014-08-06T12:43:56.073 に答える