0

我正在开发一个 chrome 插件,该插件在一个页面内创建一个 iframe,其 URL 与原始页面相同(仅添加一个哈希)。

例如,我在“www.example.com/index.php”上启动我的插件。该插件在此页面中添加了一个名为“secondaryFrame”的 iframe,其中包含 src="www.example.com/index.php#myhash"。

从父框架我可以访问“secondaryFrame”.contentWindow.document,因为它们都有相同的document.domain“example.com”

问题是在一些站点上,两个 document.domain 是不同的: 父框架:“example.com” 辅助框架:“www.example.com” 这怎么可能?两个框架都有相同的 url ... 为什么其中一个 document.domain 也使用“www”部分?在这种情况下,我无法访问辅助框架的 contentWindow,这是一个问题。你有解决这个问题的方法吗?

4

1 回答 1

0

您没有说明如何获取用于父框架和辅助框架的 URL。通常,在应用于网站的域名系统中,“www.domain.name”只是“domian.name”的别名,反之亦然,并剥离了“www”。在您的代码中可能会访问完全相同的内容并满足 JS 中的域名限制。

当然,不能保证这一点,并且可以使“ http://www.domain.name ”与“ http://domain.name ”完全不同的工作方式。只是这种命名约定多年来一直是常见的做法。

于 2013-09-20T02:54:20.343 回答