2010-01-13 47 views
0

我知道来自不同域的内部框架无法访问父级上的任何东西,但是,我需要知道的仅仅是最上面的域。这里是场景:通过javascript跨嵌套iframe和不同域的顶级域检测?

ABC.com从DEF.com加载一个iframe,加载来自XYZ.com的iframe。在XYZ.com的层面上,我需要知道ABC.com是最顶级的域名。

有什么想法?假设顶级和中间人合作或没有合作,是否有不同的浏览器或黑客?

我已经能够想出几种不同的方法来在Firefox上做这种事情,但我有兴趣看到这种方式在IE中被利用。

回答

0

我不记得同源策略是否防止读取位置(显然,写入或修改是)。但是你可以很容易地测试它。

从页面上XYZ.com

alert(top.location.href); 
+0

这将让你在FF上拒绝的权限和在IE上拒绝访问... – fixanoid 2010-01-13 23:12:32

0

彼得是对的..只是一个小变化,因为ü要域并非完整的网址 top.location.host - 给端口的名称 或 top.location.hotname - 只是域名

+0

恐怕这也不起作用。您在IE上获得了拒绝权限,我会在其他浏览器上尝试此操作,但鉴于这是一种“合法”方法,我之前已对此进行了扫描,并且它在上述情况下无效。 – fixanoid 2010-01-15 15:41:05