捕获iframe内部的javascript:window.close()

Catch javascript:window.close() inside an iframe

本文关键字:window close javascript iframe 内部 捕获      更新时间:2023-09-26

我在一个我无法控制的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事件/调用?欢迎提出任何建议。

据我所知,您需要捕获帧内的事件。如果你不能修改框架内容,那么你可能运气不好。若您可以修改iframe内容,那个么您可以在它上面添加那个事件侦听器,并将它放在调用父窗口的全局函数中。或者您可以尝试使用postMessage。

相关文章: