找出DOM中哪个框架发起了postMessage(在IE11中)

问题描述 投票:0回答:1

在JavaScript中,一旦我收到“消息”事件,有没有办法找出DOM模型中的哪个帧已启动它?在调试大型Web应用程序时,这将非常有用,其中特定消息可能来自15-20帧。消息事件具有源属性,但如果该帧是跨域的,则无法访问:

enter image description here

因为我知道这些东西因浏览器而异,所以我会特别询问IE11。

javascript internet-explorer-11
1个回答
0
投票

我找到了一种即使在跨域实际工作的方法 - 我通过在Add Watch窗口中评估它来添加DOM元素。然后我在DOM树中搜索该元素,并以这种方式找出帧。

例如,此代码有效:

var foo_btn = document.createElement("BUTTON"); var foo_t = document.createTextNode("FOOBAR FOOBAR"); foo_btn.appendChild(foo_t); document.body.appendChild(foo_btn);

您只需单击添加监视并粘贴它,然后在执行后,您可以在DOM树中搜索FOOBAR FOOBAR

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.