Javascript 如何检测何时执行iframe脚本?

Javascript 如何检测何时执行iframe脚本?,javascript,jquery,html,iframe,Javascript,Jquery,Html,Iframe,例如: 我有一个带有iframe的主页,我的iframe包含一个按钮。当我按下iframe中的按钮时,一些脚本被执行,iframe的设计也被更改。出现文本和其他内容 如何检测何时运行iframe脚本?(或者按钮被按下了?) iframe来自不同的域。如果iframe的内容来自与外部页面不同的域,则您不能-浏览器故意阻止您了解iframe内部的情况。不过,如果框架发生变化,您可以抓取它所指向的URL 如果它在同一个域中运行,您可以像通常一样通过iframe的document属性访问iframe中的

例如: 我有一个带有iframe的主页,我的iframe包含一个按钮。当我按下iframe中的按钮时,一些脚本被执行,iframe的设计也被更改。出现文本和其他内容

如何检测何时运行iframe脚本?(或者按钮被按下了?)


iframe来自不同的域。

如果iframe的内容来自与外部页面不同的域,则您不能-浏览器故意阻止您了解iframe内部的情况。不过,如果框架发生变化,您可以抓取它所指向的URL


如果它在同一个域中运行,您可以像通常一样通过iframe的document属性访问iframe中的元素。如果主页和iframe在同一个域中,您可以使iframe中的javascript调用函数或访问父框架的元素

因此,在iframe中的脚本末尾,您可以执行以下操作

parent.script_is_finished();

如果您可以控制iframe中的脚本,那么您可以使用它与主页进行通信,即使它们位于不同的域中

对FF3+、IE8+、Chrome、Safari(5?)和Opera10的支持+


这里有一个作为对
iframe
来自不同域这一事实的更新:

简短回答:否。您无法在另一个域的
iframe
中检测到单击

长而短的回答:您不能更改的原因与您可以更改
iframe
的内容的原因相同——这将是一种安全风险,除非
iframe
位于同一域上。您根本无法跟踪来自不同域的
iframe
中的用户活动


对不起,但我希望这有帮助

那你就不能。浏览器不会让你这样做,因为这是一个安全风险。你有任何控制其他域。。。你能更新它吗?如果没有,那么@PhonicUK是正确的,您将点击。如果您这样做了,那么就有可能允许使用CORS进行访问,例如。。。有关更多详细信息,请参阅iframe代码中没有任何控件。。。我在想如果我能检测到它被点击的时间。。。这是可能的吗?不,如果你无法控制iFrame的源代码,那么你就完全不走运了。。。您无法访问iframe中的任何内容(DOM、代码、事件等),出于良好的安全原因,这没有任何帮助,抱歉:)@Pytagora如果您能告诉我们您在大局中想要实现什么,我们可能会提供更多帮助。