[英]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.