有没有办法将一些文字附加到iframe父母的地址栏?我知道你可以通过使用HTML5 history.replaceState
来实现这一点,即使有一种方法可以使用history.js,但它似乎不适用于iframe的父(_top)。父母的域名也与iframe的域名不同(我知道这可能是我问题的原因)。
我想这样做是因为我制作了可以在任何网站上插入的嵌入式脚本,它主要创建一个带有一些内容的iframe,但我希望能够将一些文本附加到父级的地址栏以便能够在Facebook或Twitter上分享该链接(我想分享父母的网址,而不是iframe网址)。
somebosy知道是否可以这样做吗?或者可能是我问题的另一种解决方案?
谢谢!
答案 0 :(得分:1)
有没有办法将一些文字附加到iframe父母的地址栏?我知道你可以通过使用HTML5 history.replaceState
来实现这一目标
是的,那。
父母的域名也与iframe的域名不同(我知道这可能是我的问题的原因)。
出于安全原因,您无法跨域执行此操作。您可以postMessage
to the top frame并在顶部框架中运行脚本侦听消息并更改响应中的URL。
显然,这需要主持框架的网站的合作。
window.addEventListener("message", receiveMessage, false);
function receiveMessage(event) {
if (event.data && event.data.updateUri) {
history.replaceState({}, "", event.data.updateUri);
}
}
和
top.postMessage({updateUri: "/example"}, "*");