我有一個包含多個沙盒iframe的shell頁面。在addEventListener中查找源代碼iframe的周邊元素
例如
<div>
<div id="sb1"><iframe sandbox="allow-scripts" srcdoc="stuff here"/></div>
<div id="sb2"><iframe sandbox="allow-scripts" srcdoc="other stuff here"/></div>
</div>
當我收到來自其中一個iframe的消息時,我想知道父div(即#sb1或#sb2)。
我曾嘗試以下,但它不工作:
function receiveMessage(event)
{
// Follow line results in : Uncaught DOMException: Blocked a frame with origin ...
var parentDiv = $(event.source).parent();
}
window.addEventListener("message", receiveMessage);
有沒有一種方法來確定的iframe的父,而不必通過一個id來自iframe的消息嗎?
可能不會,看到iframe被同源策略阻止。 – adeneo
您可以查看文檔中的iframe以找到具有匹配的窗口對象的iframe。 –