【发布时间】:2014-07-24 13:06:02
【问题描述】:
有一个页面。顶部的 div 和底部的 iframe。需要从 iframe 中提取页面 url 并将其放入顶部的 div 中。当用户在 iframe 中浏览页面时,顶部 div 中的 url 必须相应更改。
我是 JS 和 Jquery 的菜鸟。所以问题是这可以做到吗?如果是这样,有人可以指出我正确的方向吗?
谢谢!
【问题讨论】:
标签: javascript jquery
有一个页面。顶部的 div 和底部的 iframe。需要从 iframe 中提取页面 url 并将其放入顶部的 div 中。当用户在 iframe 中浏览页面时,顶部 div 中的 url 必须相应更改。
我是 JS 和 Jquery 的菜鸟。所以问题是这可以做到吗?如果是这样,有人可以指出我正确的方向吗?
谢谢!
【问题讨论】:
标签: javascript jquery
您可能正在寻找类似于window.location 的内容。但是,为了获得 iFrame 的 URL,您可能需要做更多的工作。相同的概念,但您必须获取 iFrame 的 ID 并使用 window.location 来获取 iFrame 的位置。
这是我发现的另一个可能提供更多价值的帖子:Get current URL with JavaScript
【讨论】:
如果您的脚本在 iframe 中,并且您正尝试将父窗口的 url 放入 div:
window.parent.$("#your-div").text(window.parent.location.href)
如果您的脚本在 父页面中,并且您正尝试将框架的 url 放入 div:
$(document).ready(function() {
$("IFRAME").load(function() {
$("#your-div").text($("IFRAME")[0].contentWindow.location.href);
});
});
编辑:
我应该注意,除非父页面和框架页面共享same origin,否则这些都不会起作用。
第二次编辑:
由于您的父页面和框架页面的来源不同,因此您在技术上无法做到这一点。但是,如果足够好,您可以获得 iframe 的“src”属性。请注意,当它更改页面时,这不会与框架一起跟踪。它只是创建 iframe 以显示的任何页面(如果有)。
$("IFRAME").attr("src")
除此之外,我认为这是不可能的。这显然是一个重大的安全问题。例如:制作一个 iframe,使其成为全窗口,跟踪 URL 并保持位置字段同步,然后繁荣:您有一个可以监控某人浏览的浏览器,查看应该加密和安全的参数。这会很糟糕,而且很容易诱骗某人进入这种状态。
【讨论】: