[英]iFrame alternative for getting cross-domain URL
我正在创建一个基于网络的游戏。 作为其中的一部分,玩家必须访问网站的主页,并按照一系列链接,直到他在可能的次要时间内到达“目的地页面”。 把它想象成一种链接寻宝。
为了控制游戏,我在顶部创建了一个带有javascript计时器的页面,以及一个显示网站冲浪的iFrame(这不是我的,我无法控制它)。
然而,这有一个巨大的错误:无法检测到iFrame的当前跨域URL,因此我的页面无法知道用户何时到达目标页面并停止游戏。
有没有其他方法可以实现这一目标?
有没有其他方法可以实现这一目标?
不,那里没有。
同源策略完全阻止您访问显示来自其他域的内容的任何窗口对象的属性。
(如果一个是另一个的子域,那么document.domain
会有所帮助。但是根据你的问题描述,听起来并非如此。)
除了技术问题:在您不拥有的网站上生成流量和点击(这将会扭曲他们的统计/分析),只是为了能够展示您自己的游戏,这将是相当不公平的(又名“迪克移动“。)
您可以等到iFrame的contentWindow
被解析,并且在您实际更改源后,您有对iFrame窗口的引用。 一旦你有了,你可以在iFrame的<body>
上添加一个onload处理程序,并在该处理程序中注入一些postMessage
调用,所以一旦主体加载了iFrame的窗口,它将从body的onload处理程序调用postMessage,它将通知你外部窗口,当然你必须使用window.addEventListener("message", callback)
在外部窗口中添加消息监听器
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.