0

我使用以下 jQuery 脚本来读取页面 URL,并据此更改背景图像:

我的脚本的排序版本:

var url = window.location.href;
if (url.search("food") > 0){
    alert('Example: use image 1');
} else {
    alert('Example: use image 2');
}

当页面独立加载时,此脚本运行良好。但是,从 调用页面时它不起作用iframe,这意味着脚本无法读取父窗口的 URL。有没有办法从调用的页面中获取父窗口的 URL iframe?我希望这是有道理的。

- 编辑 -

我可以完全控制两个页面:带有 的页面iframe和在iframe. 也许另一种选择是在页面中有一个脚本来更改页面的背景图像iframe

- 解决方案 -

parent.document.location.href成功了,因为我iframe在同一个域中但在不同的子域中,所以我还必须声明:document.domain = "myurl.com". 所以我现在的最终脚本是:

document.domain = "mydomain.com";
var url = parent.document.location.href;
if (url.search("food") > 0){
    alert('Example: use image 1');
} else {
    alert('Example: use image 2');
}
4

2 回答 2

1

尝试window.parent.location.href从 iframe 使用。只要 iframe 和父级都在同一个域上,这可以工作。

另外,请参阅此相关帖子:从 iframe 访问父 URL

于 2013-03-13T20:16:51.667 回答
1

操作,

此解决方案使用 jQuery 访问(相同域)iframe 的内容/应用 css 样式。

于 2013-03-13T20:31:48.140 回答