Javascript 将文本附加到iframe父地址栏
有没有办法将一些文本附加到iframe父级的地址栏?我知道你可以通过使用HTML5Javascript 将文本附加到iframe父地址栏,javascript,jquery,html,dom,Javascript,Jquery,Html,Dom,有没有办法将一些文本附加到iframe父级的地址栏?我知道你可以通过使用HTML5history.replaceState来实现这一点,即使有一种方法是通过使用来实现的,但它似乎不适用于iframe的父级(_top)。此外,父级的域与iframe的域不同(我知道这可能是我的问题的原因) 我想这样做是因为我制作了嵌入式脚本,我可以在任何网站上插入,它主要创建一个iframe,其中包含一些内容,但我希望能够将一些文本附加到家长的地址栏,以便能够在facebook或twitter上共享该链接(我希望共
history.replaceState
来实现这一点,即使有一种方法是通过使用来实现的,但它似乎不适用于iframe的父级(_top)。此外,父级的域与iframe的域不同(我知道这可能是我的问题的原因)
我想这样做是因为我制作了嵌入式脚本,我可以在任何网站上插入,它主要创建一个iframe,其中包含一些内容,但我希望能够将一些文本附加到家长的地址栏,以便能够在facebook或twitter上共享该链接(我希望共享家长的url,而不是iframe url)
有人知道这是否可以做到吗?或者是我问题的另一个解决方案
谢谢
有没有办法将一些文本附加到iframe父级的地址栏?我知道你可以通过使用HTML5 history.replaceState来实现这一点
是的,就是这个
此外,父级的域与iframe的域不同(我知道这可能是我的问题的原因)
出于安全原因,您不能跨域执行此操作。您可以在顶部框架中运行一个脚本来侦听消息并更改URL作为响应
显然,这需要承载框架的站点的合作
window.addEventListener("message", receiveMessage, false);
function receiveMessage(event) {
if (event.data && event.data.updateUri) {
history.replaceState({}, "", event.data.updateUri);
}
}
及
你能给我举个例子说明如何做到这一点吗?非常感谢!它就像一个符咒!我还使用location.hash而不是history.replaceState来测试它,以支持旧浏览器。
top.postMessage({updateUri: "/example"}, "*");