如果某个URL,使用Jquery更改iframe主体的背景图像

时间:2013-03-13 20:11:10

标签: javascript jquery iframe

我使用以下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。有没有办法从iframe中调用的页面获取父窗口的URL?我希望这是有道理的。

- 编辑 -

我可以完全控制两个页面:包含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');
}

2 个答案:

答案 0 :(得分:1)

尝试使用iframe中的window.parent.location.href。只要iframe和父级都位于同一个域中,这就可以正常工作。

另请参阅此相关帖子:Access parent URL from iframe

答案 1 :(得分:1)

OP,

This solution使用jQuery访问(相同域名)iframe的内容/应用css样式。