0

较新版本的 FireFox 将不允许 javascript 修改“文档”变量。以下所有情况都将导致“访问属性‘文档’的权限被拒绝”错误:

document=top.document;
document=parent.document;
document=window.parent.document;
document=window.top.document;

我发现自己正在寻找一种跨浏览器设置“文档”变量的解决方案。FireFox 是目前唯一不允许这样做的浏览器。这个问题有什么javascript解决方案吗?

在这种情况下,它被用作在 iframe 中显示 AdSense 广告的一种方法。谷歌授予某些公司特别许可,使其能够做到这一点。这是一些示例代码的链接:

http://geoland.org/2007/01/adsense-in-iframe/

在 iframe 中使用文档替换,以便与父引荐来源网址一起发送广告。这对 AdSense 很重要,否则所有收入对于不匹配的推荐人都将被视为无效。也许还有另一种在子 iframe 中使用父引用的方法?假设子 iframe 是跨域的。

4

1 回答 1

0

Firefox 的行为是规范所要求的。请参阅 http://www.whatwg.org/specs/web-apps/current-work/multipage/browsers.html#the-window-object 上的注释[Unforgeable]http://dev.w3.org的定义/2006/webapi/WebIDL/#Unforgeabledocument[Unforgeable]

也就是说,adsense 如何确定“引荐来源”?您可以只修改 iframe 中文档对象的相关属性吗?

于 2012-07-31T07:20:30.093 回答