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 回答