跟踪按钮在iframe中单击

时间:2010-05-12 15:36:34

标签: javascript facebook iframe button onclick

如果我无法控制外部网站或其内容,是否可以在iFrame中跟踪按钮点击?

(非常虚构的例子)如果我有这样的iframe:

<iframe src="http://www.johnny.com/plugins/like.php?href=http%253A%252F%252Fexample.com%252Fpage%252Fto%252Flike&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;font&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>

3 个答案:

答案 0 :(得分:1)

如果您询问是否可以在包含iframe的HTML的DOM中找到一个按钮,然后向其添加onclick事件,那么是的,如果您是从同一个域提供的。

 window.parent.getElementById()

将起作用 - 任何其他DOM函数也将起作用。

如果您不在同一个域中,则浏览器不会允许您。它被称为跨站点脚本(XSS),被视为安全违规。

如果您在其他域中,则所有者确实添加了您的iframe,对吧?如果是这样,让他们也添加事件。他们可以传递变量并在iframe上调用辅助函数。所以他们可以通过按钮,你可以将事件添加到它。

答案 1 :(得分:1)

答案是:如果没有与远程网站的某种合作,根本不可能 这是因为同源政策正在为您提供保护。

如果您有某种合作,那么您可以使用跨域消息传递(例如使用easyXDM)。

答案 2 :(得分:0)

跨浏览器不可靠,没有。

这很容易成为跨站点脚本(XSS)漏洞,并被大多数现代浏览器捕获。